RHEL6-基础篇-1.系统结构与内核

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RHEL6-基础篇-1.系统结构与内核相关的知识,希望对你有一定的参考价值。

一、linux系统结构

linux系统的基础结构,概要性的说主要有5个部份(但真正的只包括4个部份排除硬件部份的情况下)

  • 硬件(如:cpu、memory、pci、ide、sata等等)

  • kernel  

  • modules(即驱动)

  • lib库接口和api接口(即应用程序接口)

  • shell和tools(应用程序结构,如shell、xwindow、jvm等等)

技术分享

问题:有没有可能只有kernel和modules在运行,而不需要shell?

答:可以。因为shell只是一个app(应用程序),人机交互并不一定要shell,也可能是其它的app,比如:kde,apache这些应用程序。如:路由器就是使用web页面来管理的


二、内核

1.内核组成

一个完整的linux内核一般由5个部份组成,也就是内核所提供的功能

  • 内存管理 --物理内存调度及虚拟内存的调度

  • 进程管理 --对CPU的调度

  • 进程间通信 --对用户空间的数据同步,共享和交换

  • 虚拟文件系统--逻辑文件系统和设备驱动程序

  • 网络接口--网络协议和网络驱动程序


2.内核的获取站点、存放路径、查询版本、查看模块

kernel的源代码(内核)获取站点:www.kernel.org

存放路径:ls -l /boot/vmlinuz-2.6.9-22.el

查看系统内核版本:uname -a 或uname -r 

查看模块:ls /lib/modules/2.6.9-22.el/kernel


3.内核版本的发展与说明

目前linux的内核版本主要有:2.4、2.5、2.6、3.0、4.0,呈现多种内核版本并行发展的状态

  • 2.4版本:2000年发布,标志着趋于成熟,可以初步用于服务器端了,虽然没有业界的老大哥UNIX这么强。

  • 2.5版本:过渡版本,趋于成熟稳定

  • 2.6版本:2003年发布,可以独当一面了。


版本号结构:主版本.次版本.修订次数-补丁更新次数

  • 主版本:通常指一次较大的版本改动才需要更新,通常是涉及到整个存储格式的改变。

  • 次版本:奇数版本是实验,偶数版本是稳定版本

  • 修改次数:修改了的次数,仅仅只是次数,不代表稳定不稳定。


问题:为什么还要开发2.4?

答:因为还有很多用户在使用2.4版本,可能2.4版本的使用过程中还有新的漏洞需要修复。


问题:linux和windows哪个安全?

答:linux未必就比windows安全,因为linux可以知道linux的源代码。

如果说Linux比windows安全,主要体现在:

  • linux参与修改补丁的人数众多,因此比windows具有更多的安全保障

  • linux的应用程序安装上比较复杂以及针对源代码的安装方式是针对特定的硬件环境进行编译的,可能一个木马或病毒制造出来放置于另一个linux环境就无法安装使用,因此这也保证了linux在木马病毒上比较少的原因。

注意:提醒linux系统管理员需要特别注意linux的安全,资源一定要在官方下载,不要随便找一个网站下载。因为你不知道是否有木马和病毒在内核中。


问题:windows与linux 的GUI界面的区别?

答:

  • windows的GUI是跑在kernel和modules与api之间的,即内核空间中。上面是api,api之上又有些lib库的api接口,再上面才是app。

  • 而linux的GUI,即x window,是一个APP应用程序,它不跑在kernel和modules与api之间,而是以一个app应用程序的形式跑在api接口或lib库api接口之上的,即用户空间。类似于一个shell的app一样,所以它崩溃了并不会影响到系统的使用。充其量只是一个app死了而已。x window是独立于系统之外的,所以不启动x window完全可以。


问题:为什么在linux中的GUI感觉会慢一些,在windows的gui会比较快?

答:因为linux中的gui是作为一个app来运行,它不在内核空间中,所以对于资源的运用会比较慢,效率会比较低。

而windows是专注于gui的OS,它的GUI是直接运行在内核空间的,更准确点说,它是作为一个服务(在后台运行的程序)来运行的。它是介于kernel和mulues与api接口和lib接口间的一些服务的存在,当服务运行时,它是直接运行在内核空间中。这样对于GUI的运算效率会更高,因此比以linux的app运行来说要快

本文出自 “糊涂小孩123” 博客,请务必保留此出处http://hutuxiaohai123.blog.51cto.com/3491681/1792510

以上是关于RHEL6-基础篇-1.系统结构与内核的主要内容,如果未能解决你的问题,请参考以下文章

后端程序员必备的Linux基础知识

架构Linux结构

和菜鸟一起学linux内核源码之基础准备篇

Linux基础补充——存储结构与管理硬盘

Linux学习----基础篇(shell命令及vi使用)

第16篇 Shell脚本基础