2012年3月30日

LINUX 内核源文件介绍以及头文件介绍

摘要: *******************LINUX 内核(0.11)源文件介绍******************1、内核源文件放置目录:||————boot 系统引导汇编程序目录||————fs 文件系统目录||————include 头文件目录||————init 内核初始化程序目录||————kernel 内存进程调度、信号处理、系统调用等程序的目录||————lib 内核库函数目录||————mm 内存管理程序目录||————tools 生成内核Image文件的工具程序目录||————Makefile文件|2、引导启动程序目录boot 包含3个汇编语言文件,是内核源文件中最先被编译的程序 阅读全文

posted @ 2012-03-30 15:06 n哖苡逅 阅读(4210) 评论(0) 推荐(0) 编辑

linux系统调用和库函数调用

摘要: Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。可以参考《Linux程序设计》(英文原版为《Beginning Linux Programming》,作者是Neil Matthew和Richard Stones)第三章: Working with files。 1. 系统调用系统调用提供的函数如open, close, read, write, ioctl等,需包含头文件unistd.h。以write为例:其函数原型为 size_t write(int fd, const void *buf, size_t nbytes) 阅读全文

posted @ 2012-03-30 14:56 n哖苡逅 阅读(1329) 评论(0) 推荐(0) 编辑

C语言中.h和.c文件解析(很精彩)

摘要: 简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件) 4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格式信息。(生成.exe文件) 编译器在编译时是以C文件为单位进行的,也就是说如果你的项目中一个C文件都没有,那么你的项目将无法编译,连接器是以目标文件为单位... 阅读全文

posted @ 2012-03-30 12:39 n哖苡逅 阅读(134156) 评论(10) 推荐(35) 编辑

导航