收藏 分销(赏)

Chapter 7 系统内核管理.ppt

上传人:s4****5z 文档编号:13965440 上传时间:2026-05-18 格式:PPT 页数:23 大小:300.50KB 下载积分:10 金币
下载 相关 举报
Chapter 7 系统内核管理.ppt_第1页
第1页 / 共23页
Chapter 7 系统内核管理.ppt_第2页
第2页 / 共23页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Chapter 7,系统内核管理,软件学院蔡莉,1,本章要点,Linux,内核定义,源代码树,内核类型,内核版本,重建,Linux,系统内核,配置,LILO,2,一、,Linux,系统内核,内核的定义,1991,年,,Linus,Torvalds,向全世界发布了,Linux,内核的,.99,版本。该版本源于他希望有一个功能强大的类,UNIX,的操作系统用于他的个人电脑,,Linus,逐步创建了现在称为,Linux,内核的东西。从那以后,数以千计的研究者向,Linux,工程贡献了他们的聪明才智和时间。,Linus,仍在维护着这个内核,决定哪些东西应该作为正式发布的,Linux,内核的一部分,而哪些东西不作为内核的一部分。,注意:为了防止新的内核出现问题,应该把现有的内核存储到一个合适的地方,这样是一种比较好的做法。,3,一、,Linux,系统内核,内核的定义,在操作系统层次设置时,将一些与硬件紧密相关的模块、运行频率较高的模块,以及为许多模块所公用的一些基本操作,安排在靠近硬件的层次中,并使它们常驻内存,以提高运行效率,通常将这部分程序称为,操作系统的内核,。,内核的功能,实现定时器和中断处理,实现对虚拟内存的管理,实现对进程的管理和调度,实现进程之间通信,实现对外围设备的驱动,实现对虚拟文件系统的管理,实现对网络的支持和管理,4,一、,Linux,系统内核,Linux,内核的特性,能够处理更多的并发进程和线程。,突破了,2GB,文件大小的限制,;,支持,Intel 64GB,的,RAM;,使得可处理的用户数目显著增加。,支持更多的文件系统和分区类型。,在新内核中逻辑卷控制器(,LVM,)支持得到实现,使用,LVM,,虚拟分区或逻辑卷可以随意地创建和改变大小。,网络层得到完全重写。,把防火墙和,Internet,协议功能写入内核。,其他特性。,5,一、,Linux,系统内核,Linux,源代码树,尽管,Linux,内核是作为目录进行组织的,它还是可以被分成几个子系统。下面给出了,Linux2.4,的主要部分:,系统结构,驱动程序,文件系统,初始化,进程间通信,内核,内存管理,联网,6,一、,Linux,系统内核,系统结构,Linux,最初是为,Intel 80386,微处理器所编写的,现在它支持几种不同的系统结构。,arch,目录包含了所有特定平台的代码,对实现底层系统与,Linux,支持的多数处理器的接口而言,这些代码是必要的。下表提供了,Linux,所支持的系统结构类型的名字和说明。,Linux,支持的系统结构,7,一、,Linux,系统内核,驱动程序,与硬件交互并控制硬件的一小段内核称为驱动程序(,driver,)。在用户做某些工作时,驱动程序告诉计算机如何与,modem,、,SCSI,卡、主板、鼠标等等交互。清单,7-2,给出了驱动程序子系统的主要组成部分。,acorn,cdrom,i2o,macinatosh,misc,pci,scsi,usb,acpi,char,ide,mtd,pcmci,sgi,video,Atm,dio,ieee1394,md,net,pnp,sound,zorro,Block fc4 input media,nubus,s390,tc,Bluetooth i2c isdn message,parport,sbus,telephony,8,一、,Linux,系统内核,文件系统,为了让内核知道如何与文件系统进行交互,内核必须知通文件系统的结构。大多数,Linux,机器的默认文件系统是第二扩展文件系统(,Second Extended File System,)或者称为,ext2,。,Red Hat Linux7.2,以第三扩展文件系统,ext3,作为默认的文件系统。,为了使,Linux,内核可以和不同的文件系统一起工作,,Linux,创建了虚拟文件系统,VFS,。该系统提供了一个特殊的管理文件系统代码的接口,这个接口是通过创建一个用于文件系统的内存结构井使用,register_filesystem,(),函数对这个结构进行注册来完成的。通过这种抽象的方法,文件系统代码可以直接编译到内核中,或者作为一个可装载的模块,避免了编程人员必须把现有的文件系统转化为可以和默认的文件系统兼容的形式。,9,一、,Linux,系统内核,初始化,init,是,Linux,内核的初始化进程。内核的所有初始化工作都在这个区域中进行,包括从定义所有的驱动程序,到对来自于其他进程的参数进行语法分析,并将其中继到内核。在任何一个,UNIX,系统上,init,都是主进程,,Linux,当然也不例外。,10,一、,Linux,系统内核,进程间通信,进程间控制(,InterproccssControl,,,lPC,)是一种用于内核管理进程和允许迸程相互间通信的方法。,Linux,内核使用信号、镑道和套接字来完成这项工作。对套接字而言,,Linux,使用,UNIX,系统,V,的方法,:,消息队列、共享内存和信号最来完成进程间通信。,因为它必须与内核管理子系统、文件系统和内核的核心结构交互,所以这是内核的一个大型子系统。这些主题的细节不属于本章范围。在,Linux,内核源代码的,Documentation/directory,目录下面可以找到,kernel-,docs.txt,文件,其中有一张关于详细的结构、目的和功能的资源列表。,11,一、,Linux,系统内核,内存管理,对任何一个操作系统而言,内存都是最关键的子系统。如果没有内存,内核就不能发挥作用,因为所有等待着耍执行的操作都必须以内存的栗种形式进行存储。内存管理子系统负责记录所冶系统内存和内核使用系统内存的情况。,12,一、,Linux,系统内核,联网,Linux,广为人知的是其联网的能力。,Linux,作其内核中支持好几个协议套。这种广泛的协议覆盖范围使得,Linux,可以在几乎所有的网络环境中都能得心应手。下面列出了,Linux,内核支持的所有协议。,Linux,内核支持的网络协议,。,Linux,内核有几个修改版本,使得,PC,可以作为一个专用的路由器或者网桥。有了,2.4,内核中所包含的,IPTable,,现在,Linux,内核自己就有可能完成所有防火墙和路由的操作,而不用再购买专用网络硬件,因为使用一个标准的类,UNlX,接口,在一台早期,PC,上安装,Linux,就可以提供同样的功能。,13,二、内核类型,一般情况下,,Linux,可以配置成两种类型内核来进行工作:,模块化内核和单块式内核。,模块化内核,模块化内核是非常基本的内核,它仅仅包含那些提供主要功能(如内存管理和模块支持)所必需的代码。内核的剩余部分是作为模块来编译的,模块是指可以在运行时装载,用来处理内核和硬件之间通信的代码。在需要使用一个设备时,用户可以指示内核把那些代碉装载到内存中。一旦装载了代码,就可以访问和使用相应的硬件了。,优点:是减少了内存开销,增加了灵活性。通过把所有的驱动程序都编译成模块,那么每次在主机中安装一个新硬件时就不需要重新编译内核了。,缺点:是驱动程序的装载需要时间,而且需要创建一个最初的,RAM,驱动程序映像,在启动时,内核根据一个特定的配置来自动装载所有需要的模块。,14,二、内核类型,单块式内核,单块式内核包含所有必要的会在主机中安装的每一个硬件的驱动程序。这样,如果将来要安装一个新硬件,那么有必要在编译时选择好驱动程序,从而为将来的硬件添加工作作好准备,否则就只能重新编译内核了。,优点:是减少了整个内核的编译时间,可成为无盘工作站使用的可启动内核,并且它在启动时不需要有一个初始的,RAM,设备。,15,二、内核类型,内核版本,Linux,内核处于稳定的发展状态。当添加了新特征、修正了错误以及在基础代码中合并了新技术的时候,就有必要提供在生产环境中使用的内核的稳定版本,但是拥有开发人员用来进行测试的最新代码的版本也很重要。,在命令提示符上键入,uname,-r,会显示当前的内核版本。,内核版本可以分解为四个部分:,主要版本,次要版本,子级编号,额外版本级,偶数编号的次要版本是稳定版本,而奇数编号的次要版本是开发版本,16,三、重建,Linux,系统内核,准备工作,了解现在运行的内核的版本号。,#,uname,a,了解新内核的基本情况。,查看新内核支持的硬件。可以通过查看,Hardware-HOWTO,文件和源代码中的,config.ini,文件获得相关的信息。,查看新内核对其他软件的版本要求。可以通过查看源代码中的,Documentation,目录中的,changes,文件获得相关的信息。,准备编译内核所需要的磁盘空间一般要保证有,50MB100MB,的磁盘剩余空间。,获取新的内核源文件。,17,三、重建,Linux,系统内核,重建步骤,源代码解包。,#tar,xvfz,linux-x.x.xx.tar.gz,删除符号链接。,#,rm,/,usr/src/linux,。,新建一个符号链接到新内核目录。,#,ln,s/usr/src/linux.2.x.xx/,usr/src/linux,对老版本内核进行如下的工作,:,#,cd,/,usr,/include,#,rm,rf,asm,linux,scsi,#,ln,s/usr/src/linux/include/asm-i386,asm,#,ln,s/,usr/src/linux/include/linux,linux,#,ln,s/,usr/src/linux/include/scsi,scsi,18,三、重建,Linux,系统内核,重建步骤,删除上次编译内核时产生的,.o,文件和附属文件。,#,cd,/,usr/src/linux,/,#make,mrproper,配置内核。,#make,config,#make,menuconfig,#make,xconfig,对内核源代码文件的依赖性和完整性进行检验。,#make,dep,#make clean,正式编译内核,#make,zImage,19,三、重建,Linux,系统内核,重建步骤,如果选用了模块,还需要生成和安装模块,:,#make modules,#make,modules_install,安排新内核的位置。,#cp/usr/src/linux/arch/i386/boot/zImage/boot/zImage-2.4.9,编辑,/etc/,lilo.conf,。,安装,LILO,#,lilo,v v v,重新引导系统,#reboot,20,四、配置,LILO,初始的,LILO,#cat/etc/,lilo.conf,Prompt,Timeout=50,Default=,linux,Boot=/dev/hda2,map=/boot/map,Install=/boot/,boot.b,Message=/boot/message,Linear,Image=/boot/vmlinuz-2.4-7-10,label=,linux,initrd,=/boot/initrd-2.4.7-10.img,read-only,root=/dev/hda2,21,四、配置,LILO,修改后的,LILO,#cat/etc/,lilo.conf,Prompt,Timeout=50,Default=,linux,Boot=/dev/hda2,map=/boot/map,Install=/boot/,boot.b,Message=/boot/message,Linear,接下,Image=/boot/vmlinuz-2.4.7-10,label=,linux,initrd,=/boot/initrd-2.4.7-10.img,read-only,root=/dev/hda2,Image,=/boot/zImage-2.4.9,label=,linux,read-only,root=/dev/hda2,22,四、配置,LILO,为了验证新的,lilo.conf,文件是正确的,而且所有东西都校验过,可以不带任何参数地执行命令,lilo,,如果一切都运行正常,那么,LILO,应该返回类似下面的一些内容,:,#,lilo,Added linux-2.4.7-10,Added linux-2.4.9,警告:,在测试新的内核映像之前,请确保你有当前工作的内核的一个备份。可以通过下面的命今完成这个操作,:,#,mkbootdisk,device /dev/fd0 2.4.7-10,23,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服