摘要: (转载)http://www.farsight.com.cn/news/emb167.htm 1 Linux系统调用所谓系统调用是指操作系统提供给用户程序调用的一组“特殊”接口,用户程序可以通过这组“特殊”接口获得操作系统内核提供的服务。例如,用户可以通过进程控制相关的系统调用来创建进程、实现进程之间的通信等。在这里,为什么用户程序不能直接访问系统内核提供的服务呢?这是由于在Linux中,为了更好地保护内核空间,将程序的运行空间分为内核空间和用户空间(也就是常称的内核态和用户态),它们分别运行在不同的级别上,逻辑上是相互隔离的。因此,用户进程在通常情况下不允许访问内核数据,也无法使用内核函数, 阅读全文
posted @ 2013-09-19 11:50 robotke1 阅读(2870) 评论(0) 推荐(0) 编辑
摘要: (转载)http://www.blogjava.net/fhtdy2004/archive/2009/05/29/278958.htmlC语言中讲讲static变量和static函数有什么作用static关键字有两种意思,你看上下文来判断1,表示变量是静态存储变量表示变量存放在静态存储区.2,表示该变量是内部连接(这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static),也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).当static加在函数前面的时候表示该函数是内部连接,之在本文件中有效,别的文件中不能应用该函数.不加static的函数默认为是全局的.也就是 阅读全文
posted @ 2013-09-19 11:48 robotke1 阅读(295) 评论(0) 推荐(0) 编辑
摘要: (转载)http://blog.163.com/xu_jin_rong/blog/static/1491966220086775017178由于cublog系统的缘故,将前段时间写的一篇blog文章再次贴上。可重入函数这一概念早有接触,但一直未有系统的理解,最近阅读《APUE》信号一章时,其中讲解很到位,故总结如下。信号作为一种软中断,能够被进程给捕获,因而也就中断进程的正常执行,转而去执行信号处理程序,最后再返回到原进程继续正常执行。然而,当进程正在执行malloc()动态内存分配时,信号产生从而转入到信号处理程序,但当信号处理程序中也用到了malloc()函数时,问题就出来了?因为mall 阅读全文
posted @ 2013-09-19 11:44 robotke1 阅读(506) 评论(0) 推荐(0) 编辑