预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共197页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

UNIX_Linux操作系统内核结构章系统概貌SystemV1983年系统功能稳定完善公布号:1.0、2.0、2.3、3.5、4.0、4.2、4.3现在最后版本为SystemVRelease4(SVR4)3、基本功能特征交互式分时多用户人机间实时交互数据多个用户可同时使用一台机器每个用户可同时执行多个任务软件复用每个程序模块完成单一的功能程序模块可按需任意组合较高的系统和应用开发效率可移植性强数千行汇编码,数十万行C语言代码多国语言支持支持全世界现有的几十种主要语言网络和资源共享内部:多进程结构易于资源共享外部:支持多种网络协议说明:1、其它操作系统可能包含部分上述UNIX的特征,但非全部(如NT就有部分多用户系统特征)2、这些特征有些是核心直接实现的,有些是由核心提供实现这种特征的方便性和可能性,而由使用者来实现的。系统调用(systemcall)以函数形式提供给核外的命令和上层应用系统使用的一组程序,涵盖操作系统的所有功能。是应用程序请求操作系统服务的唯一通道。内核(kernel)系统调用的集合及实现系统调用的内部算法就形成操作系统核心1.3.1文件系统/binusretchometmpdevwholsbinlibrcttysstteachtty0hd02adminhwconfliuwangchenaadir2saveUNIX文件系统树示例charbuffer[2048];main(intargc,char*argv[]){intfdold,fdnew;if(argc!=3){printf(“need2argumentsforcopyprogram\n”);exit(1);}fdold=open(argv[1],O_RDONLY);if(fdold==-1){printf(“cannotopenfile%s\n”,argv[1]);exit(1);}fdnew=creat(argv[2],0666);if(fdnew==-1){printf(“cannotcreatefile%s\n”,argv[2]);exit(1);}copy(fdold,fdnew);exit(0);}copy(intold,intnew){intcount;while((count=read(old,buffer,sizeof(buffer)))>0)write(new,buffer,count);}进程:程序的一次执行实例一个程序可同时有多个实例;系统中可同时有多个进程父进程:调用系统调用fork的进程子进程:由系统调用fork产生的新进程执行程序:调用execl,用被执行程序的内容覆盖本进程地址空间在用户环境下,程序的执行通常由命令解释器shell来完成,标准的命令格式为:cmd[-options][arguments]shell可识别的命令类型有:1、简单命令catfile12、多条命令who;date;ps3、复合命令ps–e|grepstudent2(ls;catfile3;pwd)>run_log4、后台命令ls–lR/home/teacher>tlist&I/O重定向(I/Oredirect):一个进程通常(default)打开三个文件:标准输入文件(fd=0)标准输出文件(fd=1)标准错误输出文件(fd=2)例如:grepabcgrepabc<file1grepabc<file1>file2grepabc<file1>file22>file31.4操作系统服务UNIX操作系统提供五种主要的服务(也是UNIX核心的五个重要组成部分):1.进程管理建立、终止、挂起、通信等2.时钟管理分时共享cpu,时间片,调度3.存储管理二级存贮器(内存和对换区),分配主存4.文件系统管理二级存贮结构。分配和收回存贮区和索引节点5.设备管理对I/O设备进行有控制的存取(多进程系统的特征)1.5硬件假设(假设机器硬件只支持的运行状态)UNIX系统上进程的执行分成两种状态:用户态、核心态用户态:进程正在执行用户代码时的状态核心态:进程正在执行系统代码(系统调用)时的状态用户态和核心态的区别:①用户态:进程只能存取自己的地址空间核心态:进程可存取核心和用户地址空间②用户态:不能存取特权指令,只能存取自己的指令和数据核心态:除了能存取自己的指令和数据外,还可存取特权指令核心——处在核心态下的进程的相应部分的集合硬件是按核心态和用户态来执行操作的,但对这两种状态下正在执行程序的多个用户是相同对待的。1.5.2处理机执行级用一组特权指令给处理机设置一个执行级,以屏蔽同级和低级的中断,最大限度地减少其它事件的干扰,使当前任务顺利执行并尽快完成;但开放更高级的中断,以响应更紧迫的请求。2.链结(link)——对应命令名ln3.符号链结(symbollink)——对应