文章分类 - Kernel
摘要:[转] https://www.cnblogs.com/huxiao-tee/p/4657851.html 阅读目录 系统调用 虚拟文件系统 I/O 缓冲区 Page Cache Address Space 文件读写基本流程 [转] https://www.cnblogs.com/huxiao-te
阅读全文
摘要:问题: 当Linux内核启动时,必须找到并执行第一个用户程序,通常是init。用户程序存放在文件系统,故Linux必须找到并挂载第一个文件系统。 通常,可用的文件系统都列在/etc/fstab,所以mount可以找到它们。但是/etc/fstab本身存在与文件系统中。因此,这类似鸡生蛋蛋生鸡的问题。
阅读全文
摘要:1.前言 信号量绝对不同于信号,一定要分清,关于信号,上一篇博客中已经说过,如有疑问,请移驾! 信号量的本质是一种数据操作锁,它本身不具有数据交换的功能,而是通过控制其他的通信资源(文件,外部设备)来实现进程间通信,它本身只是一种外部资源的标识。 信号量在此过程中负责数据操作的互斥、同步等功能。 当
阅读全文
摘要:1.前言 为了理解信号 ,先从我们最熟悉的场景说起: 1.用户输入命令,在Shell下启动一个前台进程。 2.用户按下Ctrl-C,这个键盘输入产生一个硬件中断。 3.如果CPU当前正在执行这个进程的代码,则该进程的用户空间代码暂停执行,CPU从用户态切换到内核态处理硬件中断。 4. 中断驱动程序将
阅读全文
摘要:1.前言 前面总结了匿名管道,现在来看命名管道:由于匿名管道的一个限制就是:只能是有血缘关系的进程间才可以通信,比如:有两个同祖先的子进程,父子进程等;为了突破这一个限制,想让没有任何关系的两个进程间也能正常通信,所以就就有了命名管道这样的一个通信机制,一起来看看: 2.命名管道 2.1原理 管道的
阅读全文
摘要:1.前言 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区, 进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信 (IPC,InterProcess Com)
阅读全文
摘要:【转】http://www.cnblogs.com/melons/p/5791796.html 1.前言 本文主要列举了Linux下进程间通信的几种手段。 2. linux下进程间通信的几种主要手段 1.管道(Pipe)及有名管道(named pipe) 管道可用于具有亲缘关系进程间的通信,有名管道
阅读全文
摘要:转自宋宝华博客:http://21cnbao.blog.51cto.com/109393/1946351 0.前言 公元1951年5月15日的国会听证上,美国陆军五星上将麦克阿瑟建议把朝鲜战争扩大至中国,布莱德利随后发言:“如果我们把战争扩大到中国,那么我们会被卷入到一场错误的时间,错误的地点同错误
阅读全文
摘要:[转]http://www.cnblogs.com/Daniel-G/archive/2013/08/27/3284791.html 1 前言 当执行#make menuconfig时会出现内核的配置界面,所有配置工具都是通过读取"arch/$(ARCH)Kconfig"文件来生成配置界面,这个文件
阅读全文