wamcc:将Prolog编译成C (No.7-5)

news/2024/7/10 2:48:08 标签: c, 软件测试, 数据结构, unix, 磁盘, 测试
cle class="baidu_pl">
cle_content" class="article_content clearfix">
content_views" class="htmledit_views">

5. 内存管理

我们只是在这里回顾WAM内存管理࿰c;使用三部分组成栈:Local Stack是控制块用于局部变量࿰c;Heap用于数据结构c;Trail用于存储绑定来回滚和撤销。

center">c="http://hi.csdn.net/attachment/201112/16/2066249_1323998302tDlc.jpg" alt="" />

center">图1:内存分配

它是强制性控制堆栈增长的情况下࿰c;提醒用户溢出。这通常是由于测试>软件测试融入在每个内存分配(堆每条几次)࿰c;或在每个子句项(检查所有栈)或由于新的类似WAM指令。在任何情况下这种控制都是昂贵的࿰c;更因为基本上目前机器架构允许硬件测试。事实上࿰c;机器使用虚拟内存࿰c;这意味着࿰c;用户不必理会物理地址和实际内存大小。在逻辑上如果没有物理上的࿰c;提供了非常大的线性内存。(如32位架构4G字节)当必须访问一些数据࿰c;内存管理器检测是否实际上属于物理存在于内存中或内存页(默认)。在后一种情况下࿰c;内存管理器加载在内存中后࿰c;如有必要࿰c;交换磁盘上的另一个页面。有趣的是࿰c;当一个默认页关系到一个未分配页(即无偿的)时࿰c;内存管理器引发一个异常信号。因此࿰c;我们的想法是有这样的堆栈溢出的情况下发出一个信号。要确保我们只有无偿(即归还的)的每页后跟一个堆栈(见图1)。当试图在此页读/写时࿰c;C函数(处理程序)抓到一个信号触发࿰c;负责诊断溢出(检查堆栈顶部指针)࿰c;并产生足够的错误信息。最简单的方法实施这项计划是使用Unix的mmap函数࿰c;这使得它可以从一个文件映射到内存的一部分。这部分的所有页都在相应的文件页初始标记为“交换”。然后通过简单的读写内存进行文件的读和写。通常存在一个特殊设备(/dev/zero)࿰c;返回初始读数零且没有在写数上体现出来。由于是只读内存操作࿰c;此设备非常适合我们的栈。归功于munmap功能࿰c;每页后跟着内存管理器。一个特定的机器上࿰c;在缺少mmap函数时࿰c;它有可能使用这些在内存进程之间处理共享内存(shmget等等)。最后࿰c;即使是没有这些功能的机器࿰c;wamcc使用标准C内存分配器(malloc)࿰c;并执行测试>软件测试检查溢出。
cle>

http://www.niftyadmin.cn/n/1604852.html

相关文章

2020百度夏季云智峰会:战略架构全新升级,新基建下加码智能云投入

5月18日,“ABC SUMMIT 2020百度夏季云智峰会”在线上召开。大会以“百度智能云加速产业智能化”为主题,百度智能云全新战略、新架构首次亮相,AI中台、知识中台两大创新平台及8大全新行业解决方案重磅登场。百度CTO王海峰携百度智能云智慧金融…

刷脸数据反哺精准地研发产品设计营销策略

开始慢慢的出现在我们的日常生活中,去水果店买水果,去餐厅吃饭,去商超购物,去乘地铁等等现在都可以刷脸支付。去年12月,支付宝率先发布蜻蜓一代刷脸机,刷脸支付开始应用于商业应用场景。而今,取…

“没钱、没人、没资源”,中小企业如何高效获客转化

中小企业主每天都在想什么?网站、移动端、小程序……多渠道获客,如何够一招致胜答案就是:智能门户随着获客途径越来越多,成本也随之增加,这成为了许多企业头疼的问题。中小企业怎样一键快速构建多流量通路数字化门户&a…

巨头刷脸补贴大战自伊始就没有停止过

随 着5G时代的到来,互联网 、AI智能、云计算、物联网等技术的成熟。中国财政科学研究院应用学博士后盘和林认为,刷脸支付比密码支付更安全更便捷。我国在移动支付领域相较于其他国家来说一直处于领先地位。 支付宝和微信支付两家在这一领域的竞争就从来…

wamcc:将Prolog编译成C (No.7-6)

6. 绩效评估现在让我们细化wamcc系统的系统并比较其他Prolog系统,无论是学术或商业。 6.1 基准程序 表1给出传统基准wamcc的表现。时序以秒为单位的Sparc2(2.85MIPS)使用gcc2.5.8的-O2选项。对于每一个程序,可以发现:…

百度CTO王海峰演讲干货:一张架构图指明百度智能云发展方向

人工智能与云计算、大数据等的深度融合,正在成为推动产业智能化深入发展的强劲动力。5月18日,“ABC SUMMIT 2020百度夏季云智峰会”在线上召开。峰会以“百度智能云加速产业智能化”为主题,百度CTO王海峰向外界展示了百度智能云全新战略及架构…

刷脸支付也是在这大趋势下应运而生

刷脸支付在这两大趋势下应运而生。刷脸支付也顺势成为了如今的风口项目。相比二维码、NFC等移动支付手段,刷脸支付省去了手机这个介质,进一步给消费者提供了便捷。在那些不方便携带手机或者禁用手机的场所,也是刷脸支付的重要应用场景&#x…

更便捷化的支付是时代发展的大趋势

人脸识别是一种基于人的相貌特征信息进行身份认证的生物特征识别技术,技术的最大特征是能避免个人信息泄露,并采用非接触的方式进行识别。人脸识别与指纹识别、掌纹识别、视网膜识别、骨骼识别、心跳识别等都属于人体生物特征识别技术,都是随…