摘要:
1.关于某个文件名的『类型』侦测(存在与否),如test -e filename-e该『文件名』是否存在?(常用)-f该『文件名』是否为文件(file)?(常用)-d该『文件名』是否为目录(directory)?(常用)-b该『文件名』是否为一个block device装置?-c该『文件名』是否为一个character device装置?-S该『文件名』是否为一个Socket文件?-p该『文件名』是否为一个FIFO (pipe)文件?-L该『文件名』是否为一个连结档?2.关于文件的权限侦测,如test -r filename-r侦测该文件名是否具有『可读』的属性?-w侦测该文件名是否具有『可写 阅读全文
摘要:
init的进程号是1(ps -aux | less),从这一点就能看出,init进程是系统所有进程的起点,Linux在完成核内引导以后,就开始运行init程序。init程序需要读取配置文件/etc/inittab。inittab是一个不可执行的文本文件,它有若干行指令所组成。理解Runlevel: runlevel用来表示在init进程结束之后的系统状态,在系统的硬件中没有固定的信息来表示runlevel,它纯粹是一种软件结构。init和inittab是runlevel影响系统状态的唯一原因。在上述例子中inittab文件起始阶段的注释主用来描述runlevel: Runlevel 0 是.. 阅读全文
摘要:
http://blog.csdn.net/gxfan/article/details/3173292linux内核地址空间与用户地址空间的差别本文仅限在i386平台下讨论一般情况。1、用户线性地址空间范围0-3G,内核线性空间范围3G-4G。2、内核总是立即满足内核空间的物理内存分配,并且分配结果对所有进程可见;而对于用户空间的内存分配请求,linux总是先保留用户线性地址空间的一段区域,然后修改页表项使这段线性区域都指向一页内容全为0的全局只读物理页。当进程写入这段线性区域时,将会产生一个缺页异常,这时系统才会为对应的线性地址分配物理页面,并且把物理页对应的页表项置为可写。为了保持和全局只读 阅读全文
摘要:
MMU现代操作系统普遍采用虚拟内存管理(Virtual Memory Management)机制,这需要处理器中的MMU(Memory Management Unit,内存管理单元)提供支持,本节简要介绍MMU的作用。首先引入两个概念,虚拟地址和物理地址。如果处理器没有MMU,或者有MMU但没有启用,CPU执行单元发出的内存地址将直接传到芯片引脚上,被内存芯片(以下称为物理内存,以便与虚拟内存区分)接收,这称为物理地址(Physical Address,以下简称PA),如下图所示。图17.5.物理地址如果处理器启用了MMU,CPU执行单元发出的内存地址将被MMU截获,从CPU到MMU的地址称为 阅读全文