看到好文章了(linux内核方面),大家共分享
最近生活窘迫啊,刚从北京培训回来,累死累活的修炼了4个月,本以为能大展宏图以报知遇之恩.谁知招聘公司倒跟华尔街样集体倒闭似的,发的简历也是泥菩萨过江了无影踪了.而眼瞅着断粮的日子渐渐临近,看来要靠亲戚朋友哥们借债过日了.算了,勒紧裤带的日子又不是没过过,天塌下来还有金茂大厦顶着呢. 在此也奉劝各位网友们,要辞职得考虑清楚,不要像我愣头青脑门一热做出此等搬石砸脚的事情来. 闲话少说,正餐供上,最近在研究linux高级应用,深入进去才发觉Linux真是博大精深啊,很是佩服老外及老内那些人才,不禁自问,什么时候能达到无招胜有招的境界呢?摘抄文章一篇,不敢独享.这是从IBM网站摘抄的一片文章,大家可以去它网站阅读. -------------------------------------------------------------------------------------------------------- 现在让我们从一个比较高的高度来审视一下 GNU/Linux 操作系统的体系结构.您可以从两个层次上来考虑操作系统,如图 2 所示. 图 2. GNU/Linux 操作系统的基本体系结构 系统调用接口(SCI)的方法 最上面是用户(或应用程序)空间.这是用户应用程序执行的地方.用户空间之下是内核空间,Linux 内核正是位于这里. GNU C Library (glibc)也在这里.它提供了连接内核的系统调用接口,还提供了在用户空间应用程序和内核之间进行转换的机制.这点非常重要,内核和用户空间的应用程序使用的是不同的保护地址空间.每个用户空间的进程都使用自己的虚拟地址空间,而内核则占用单独的地址空间. 更多信息,请参看 参考资料 一节中的链接. Linux 内核可以进一步划分成 3 层.最上面是系统调用接口,它实现了一些基本的功能,例如 read 和 write.系统调用接口之下是内核代码,可以更精确地定义为独立于体系结构的内核代码.这些代码是 Linux 所支持的所有处理器体系结构所通用的.在这些代码之下是依赖于体系结构的代码,构成了通常称为 BSP(Board Support Package)的部分.这些代码用作给定体系结构的处理器和特定于平台的代码. Linux 内核的属性 在讨论大型而复杂的系统的体系结构时,可以从很多角度来审视系统.体系结构分析的一个目标是提供一种方法更好地理解源代码,这正是本文的目的. Linux 内核实现了很多重要的体系结构属性.在或高或低的层次上,内核被划分为多个子系统.Linux 也可以看作是一个整体,它会将所有这些基本服务都集成到内核中.这与微内核的体系结构不同,后者会提供一些基本的服务,例如通信、I/O、内存和进程管理,更具体的服务都是插入到微内核层中的.每种内核都有自己的优点,不过这里并不对此进行讨论. 随着时间的流逝,Linux 内核在内存和 CPU 使用方面具有较高的效率,并且非常稳定.但是对于 Linux 来说,最为有趣的是在这种大小和复杂性的前提下,依然具有良好的可移植性.Linux 编译后可在大量处理器和具有不同体系结构约束和需求的平台上运行.一个例子是 Linux 可以在一个具有内存管理单元(MMU)的处理器上运行,也可以在那些不提供 MMU 的处理器上运行.Linux 内核的 uClinux 移植提供了对非 MMU 的支持.更详细信息请参看 参考资料 一节的内容. Linux 内核的主要子系统 现在使用图 3 中的分类说明 Linux 内核的主要组件. 图 3. Linux 内核的一个体系结构透视图 系统调用接口 SCI 层提供了某些机制执行从用户空间到内核的函数调用.正如前面讨论的一样,这个接口依赖于体系结构,甚至在相同的处理器家族内也是如 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |