Python 中 Mock 到底该怎么玩?
|
答案:11 11、经典的sizeof(struct)和sizeof(union)内存对齐 内存对齐作用: 1.平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。 2.性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。 结构体struct内存对齐的3大规则: 1.对于结构体的各个成员,第一个成员的偏移量是0,排列在后面的成员其当前偏移量必须是当前成员类型的整数倍; 2.结构体内所有数据成员各自内存对齐后,结构体本身还要进行一次内存对齐,保证整个结构体占用内存大小是结构体内最大数据成员的最小整数倍;
3.如程序中有#pragma pack(n)预编译指令,则所有成员对齐以n字节为准(即偏移量是n的整数倍),不再考虑当前类型以及最大结构体内类型。 前言 说起地理信息安全与保密,老百姓或许感觉有些遥远,跟自身关系不太紧密。但实际上,随着信息技术的迅猛发展,地理信息广泛应用于各个领域,对经济社会发展产生了巨大推动作用,已成为不可或缺的重要基础保障。基于位置的服务(Location Based Services, LBS)与各类生活服务不断融合,支撑了地理信息行业的大发展大繁荣,成为依赖程度越 来越高的公共服务资源。 地理信息是国家重要的基础性、战略性资源[1],直接关系到国家主权、安全和利益,承载着资源、环境、人口等经济建设和社会发展;地理信息还是军事斗争的重要组成部分[2],保障着军事活动和国防安全。与日益繁荣的地理信息行业应用相伴而生的,是地理信息安全与保密始终面临的严峻挑战。 高精度位置服务暗藏风险 首先,覆盖面最广的是各类移动终端和APP的位置服务。很多应用在使用前,都会询问用户是否“允许使用位置服务和定位功能”。据腾讯位置服务官网[3]显示,其定位服务日均请求次数达1100亿次,覆盖终端超10亿,室内定位精度达到米级。而这仅仅是腾讯公司一家(包含微信、QQ、地图等产品)的数据,足以可见当前社会高精度位置服务需求量的巨大。人们常用的社交、出行、旅游、购物、健康等众多移动应用均必须开启或记录位置信息,严重依赖室内外高精度位置服务[4]。如果不做好安全防范,可能暗藏一定的安全风险,轻则隐私泄露,重则失密泄密。
北斗卫星导航系统[5](简称“北斗”)是我国自主发展、独立运行的全球卫星导航系统(Global Navigation Satellite System,GNSS),其结合分布在地面的连续运行卫星导航定位基准站(Continuously Operating Reference Stations,CORS),为用户提供亚米级、厘米级甚至事后静态毫米级的高精度定位。随着“北斗”的逐步全球化,其高精度数据在民用领域的应用不断扩充:在智能交通领域为车辆提供精确的导航定位,在农业领域进行精准播种,在水利设施监测领域为桥梁边坡进行变形监测等。但由于北斗短报文数据通常以明文方式进行“空天地”一体化网络传输(如图1),存在数据泄露、非法篡改、身份仿冒、权限滥用等方面的安全风险。 (编辑:潍坊站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |


