2017-03-13 上文针对VFS的基本信息做了介绍,并简单介绍了VFS涉及的几个数据机构,本节结合LInux源码,对各个结构之间的关系进行分析。 一、总体架构图 总体架构图如上图所示,结合进程访问文件的实际情况,根据上图进行细节化的描述。进程通过其结构中的files_struct结构和文件建立联 Read More
posted @ 2017-04-07 15:57 jack.chen Views(673) Comments(0) Diggs(0) Edit
2017-03-08 10:37:55 一、虚拟文件系统VFS 文件系统用于将位于磁盘上的文件按照某种方式组织进内存,并给上层应用程序提供统一的访问接口。Linux支持多种文件系统EXT2/3,NTFS,XFS等,而LInux下支持这些文件系统的方式就是VFS,即虚拟文件系统。虚拟文件系统向上层提供 Read More
posted @ 2017-04-07 15:55 jack.chen Views(532) Comments(0) Diggs(0) Edit
2017-04-07 管道通信在linux中使用较为频繁的进程通信机制。基于unix一切皆文件的传统,管道也是一种文件。所以可以使用一般的VFS接口对管道进行读写操作,如read、write。具体管道分为有名管道和无名管道。无名管道的使用场景较为局限,仅仅限制在有亲缘关系的进程之间通信,多由于父子进 Read More
posted @ 2017-04-07 15:51 jack.chen Views(568) Comments(0) Diggs(0) Edit
这里涉及到的几个概念:DPL、RPL、CPL DPL:存在于段描述符中,描述访问此段的最低特权级,即访问此段的进程CPL和RPL必须大于等于此段的DPL RPL:存在于段选择符中的最低两位,成为请求特权级即进程的请求权限,这个可以由程序员自己设置但是其功能受到CPL的制约 CPL:存在于cs和ss寄 Read More
posted @ 2017-04-07 14:06 jack.chen Views(482) Comments(0) Diggs(0) Edit
2017-04-06 之前在看LinuxThreads线程模型的时候,看到该模型是通过信号实现线程间的同步,当时没有多想,直接当做信号量了,现在想起来真是汗颜……后来想想并不是那么回事,于是,就有了今天这篇博文! 其实关于信号的文章,网上有很多,写的也很好,而笔者仅仅是想把自己的想法记录下来,一来帮 Read More
posted @ 2017-04-07 10:43 jack.chen Views(2702) Comments(0) Diggs(0) Edit

以马内利