inux系统结构详解

inux系统结构详解

ID:47226332

大小:492.59 KB

页数:17页

时间:2019-08-28

inux系统结构详解_第1页
inux系统结构详解_第2页
inux系统结构详解_第3页
inux系统结构详解_第4页
inux系统结构详解_第5页
资源描述:

《inux系统结构详解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Linux系统结构详解Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。1.linux内核内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。Linux内核山如下儿部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等。如图:用戶级程厚一般程厚图1系统调用接口:SCI层提供了某些机制执行从用户空

2、间到内核的函数调用。这个接口依赖于体系结构,甚至在相同的处理器家族内也是如此。SCI实际上是一个非常有用的函数调用多路复用和多路分解服务。在./linux/kernel中您可以找到SCI的实现,并在./linux/arch中找到依赖于体系结构的部分。1.内存管理对任何一台计算机而言,其内存以及其它资源都是有限的。为了让有限的物理内存满足应用程序对内存的大需求量,Linux采用了称为“虚拟内存”的内存管理方式。Linux将内存划分为容易处理的“内存页”(对于大部分体系结构来说都是4KB)。Linux包括了管理可川内存的方式,以及

3、物理和虚拟映射所使川的硬件机制。不过内存管理要管理的可不止4KB缓冲区。Linux提供了对4KB缓冲区的抽象,例如slab分配器。这种内存管理模式使用4KB缓冲区为基数,然后从中分配结构,并跟踪内存页使用情况,比如哪些内存页是满的,哪些页面没有完全使用,哪些页面为空。这样就允许该模式根据系统需要来动态调整内存使用。为了支持多个用户使用内存,有时会出现可用内存被消耗光的情况。由于这个原因,页面可以移出内存并放入磁盘中。这个过程称为交换,因为页面会被从内存交换到硬盘上。内存管理的源代码可以在./linux/mm中找到。2•进程管理

4、进程实际是某特定应用程序的一个运行实体。在Linux系统中,能够同时运行多个进程,Linux通过在短的时间间隔内轮流运行这些进程而实现“多任务”。这一短的时间间隔称为“时间片”,让进程轮流运行的方法称为“进程调度”,完成调度的程序称为调度程序。进程调度控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其它资源,则该进程是不可运行进程。Linux使用了比较简单的基于优先级的进程调度竝选择新的进程。通过多任务机制,每个进程可认为只有自己独

5、占计算机,从而简化程序的编写。每个进程有自己单独的地址空间,并且只能由这一进程访问,这样,操作系统避免了进程之间的互相干扰以及“坏”程序对系统可能造成的危害。为了完成某特定任务,有时需要综合两个程序的功能,例如一个程序输出文本,而另一个程序对文本进行排序。为此,操作系统还提供进程间的通讯机制来帮助完成这样的任务。Linux中常见的进程间通讯机制有信号、管道、共享內存、信号量和套接字等。内核通过SCI提供了一个应用程序编程接口(API)來创建一个新进程(fork、exec或PortableOperatingSystemInter

6、face[POSIX]函数),停止进程(kilkexit),并在它们之间进行通信和同步(signal或者POSIX机制)。3.文件系统和DOS等操作系统不同,Linux操作系统中单独的文件系统并不是由驱动器号或驱动器名称(如A:或C:等)来标识的。相反,和UNIX操作系统一样,Linux操作系统将独立的文件系统组合成了一个层次化的树形结构,并且由一个单独的实体代表这一文件系统。Linux将新的文件系统通过一个称为“挂装”或“挂上”的操作将其挂装到某个目录上,从而止不同的文件系统结合成为一个整体。Linux操作系统的一个重要特点

7、是它支持许多不同类型的文件系统。Linux中最普遍使用的文件系统是Ext2,它也是Linux土生土长的文件系统。但Linux也能够支持FAT、VFAT、FAT32、MINIX等不同类型的文件系统,从而可以方便地和其它操作系统交换数据。由于Linux支持许多不同的文件系统,并且将它们组织成了一个统一的虚拟文件系统.虚拟文件系统(VirtualFileSystem,VFS):隐藏了各种换件的具体细节,把文件系统操作和不同文件系统的具体实现细节分离了开來,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。焜拟文件系

8、统可以分为逻辑文件系统和设备號动程序。逻辑文件系统指Linux所支持的文件系统,如ext2,fat等,设备驱动程序指为每一种锁件控制器所编写的设备驱动程序模块。虚拟文件系统(VFS)是Linux内核屮非常有用的一个方而,因为它为文件系统提供了一个通用的接口抽象。VFS在SCI

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。