Chinaunix首页 | 论坛 | 博客
  • 博客访问: 309774
  • 博文数量: 72
  • 博客积分: 3111
  • 博客等级: 中校
  • 技术积分: 668
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-30 15:45
个人简介

朝着心的方向前进

文章分类

全部博文(72)

文章存档

2014年(5)

2013年(1)

2012年(1)

2011年(1)

2010年(24)

2009年(40)

我的朋友

分类: LINUX

2009-09-09 10:28:05

 
划分内核
在 Unix 系统中, 几个并发的进程专注于不同的任务. 每个进程请求系统资源, 象计算能力, 内存, 网
络连接, 或者一些别的资源. 内核是个大块的可执行文件, 负责处理所有这样的请求. 尽管不同内核
任务间的区别常常不是能清楚划分, 内核的角色可以划分(如同图内核的划分)成下列几个部分:
进程管理
   内核负责创建和销毁进程, 并处理它们与外部世界的联系(输入和输出). 不同进程间通讯(通
过信号, 管道, 或者进程间通讯原语)对整个系统功能来说是基本的, 也由内核处理. 另外, 调
度器, 控制进程如何共享 CPU, 是进程管理的一部分. 更通常地, 内核的进程管理活动实现了
多个进程在一个单个或者几个 CPU 之上的抽象.
内存管理
  计算机的内存是主要的资源, 处理它所用的策略对系统性能是至关重要的. 内核为所有进程
的每一个都在有限的可用资源上建立了一个虚拟地址空间. 内核的不同部分与内存管理子
系统通过一套函数调用交互, 从简单的 malloc/free 对到更多更复杂的功能.
文件系统
   Unix 在很大程度上基于文件系统的概念; 几乎 Unix 中的任何东西都可看作一个文件. 内核
在非结构化的硬件之上建立了一个结构化的文件系统, 结果是文件的抽象非常多地在整个
系统中应用. 另外, Linux 支持多个文件系统类型, 就是说, 物理介质上不同的数据组织方式.
例如, 磁盘可被格式化成标准 Linux 的 ext3 文件系统, 普遍使用的 FAT 文件系统, 或者其他几
个文件系统.
设备控制
  几乎每个系统操作最终都映射到一个物理设备上. 除了处理器, 内存和非常少的别的实体之
外, 全部中的任何设备控制操作都由特定于要寻址的设备相关的代码来进行. 这些代码称为
设备驱动. 内核中必须嵌入系统中出现的每个外设的驱动, 从硬盘驱动到键盘和磁带驱动器.
内核功能是我们主要感兴趣的地方.
 
网络
网络必须由操作系统来管理, 因为大部分网络操作不是特定于某一个进程: 进入系统的报文
是异步事件. 报文在某一个进程接手之前必须被收集, 识别, 分发. 系统负责在程序和网络接
口之间递送数据报文, 它必须根据程序的网络活动来控制程序的执行. 另外, 所有的路由和地
址解析问题都在内核中实现.
阅读(779) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~