发布时间:2015-05-06 19:54:52
一、malloc()和free()的基本概念以及基本用法: 1、函数原型及说明: void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。 关于分配失败的原因,应该有多种,比如说空间不足就是一种。 void free(void *FirstByte): 该函数是将之前用malloc分配的空间还给程序或者是操作系统,也就是释放了这块内存,让它重新得到自由。 2、函数的用法: 其实这两个函数用起来倒不是很难,也就是malloc()之后觉得用够了就甩了它把它给free()了,举个简单例子:......【阅读全文】
发布时间:2015-04-13 22:13:47
概述系统调用是Linux内核提供的基础服务入口,通过使用这一机制,应用程序可以使用内核的一些专门功能。在分析系统调用之前,以下三点需要了解:1.系统调用将CPU从用户态切换到核心态,以便访问受保护的内核内存。2.系统调用的组成是固定的,每个系统调用在内核中都由一个唯一的数字来标识。3.系统.........【阅读全文】
发布时间:2015-04-03 09:56:34
关于中断处理程序和中断服务例程ISR的区别及联系,之前一直搞混,今天抽时间将两者关系弄弄清楚。ok,下面进入主题。 首先中断处理程序(Interrupt Handler)和中断服务例程ISR(Inerrupt Service Routine)是两个不同的概念.简单来说就是,一条中断线对应一个中断处理程序,而一个中断处理程序再对应若干个中断服务例程,具体看下图所示: 从上图中能很直......【阅读全文】