2.2. Kernel Organization

2009-05-13 08:03:36来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


应用程序通过系统调用访问内核的系统服务。在FreeBSD中按下面几个方面进行组织:

  • 基本内核工具:计时器和系统时钟操作、描述符管理、进程管理。
  • 内存管理:页、交换。
  • 普通系统接口:I/O、控制、描述符的多路操作(此处不理解multiplexing operations performed on descriptors)。
  • 文件系统:文件、路径、路径名解释、文件锁定、I/O缓冲管理。
  • 终端操作:虚拟终端、terminal line disciplines(没读懂)。
  • 进程间通讯(IPC):Sockets。
  • 网络通讯支持:通信协议、一般网络工具(如路由)。

上面的这些软件部分是独立于机器结构的,可以支持不同的硬件架构。
内核中与机器结构相关部分是与主要代码隔离开的。任何与机器结构无关的代码中都不包括为特殊架构而编写的条件代码。当需要执行与机器结构相关的动作时,与机器结构无关的代码调用一个方法,这部分方法是在与机器结构相关的代码中实现的。
下面是与机器结构相关的软件部分:

  • 低级系统启动动作。
  • 故障处理。
  • 运行时的进程上下文的低级操作。
  • 配置和初始化硬件设备。
  • 运行时的设备I/O。

内核中只有一小部分用来初始化系统。这部分代码在系统运行加载和可靠的设置软硬件环境是被用到。有些操作系统在这部分代码执行完成后会覆盖或丢弃它们。FreeBSD不收回被系统加载使用的内存,因为在典型的机器中,这部分内存只占内核资源的0.2%。而且,这些代码并不是在内核中的一个地方——它们通常分布在内核中。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/38079/showart_295802.html

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD设计与实现笔记

下一篇:freebsd中查看网卡实时流量