UNIX系统内核结构演示课件
第十章 UNIX系统内核结构.ppt
2019-8-12
感谢你的观赏
10
第十章 UNIX系统内核结构
10.1.2 UNIX系统的特征
1.开放性
UNIX系统最本质的特征是开放性。所谓开放性,是指 系统遵循国际标准规范;凡遵循国际标准所开发的硬件和软 件,均能彼此兼容,并可方便地实现互连。开放性已成为20 世纪90年代计算机技术的核心问题,也是一个新推出的系统 或软件能否被广泛应用的重要因素。人们普遍认为: UNIX是 目前开放性最好的OS,是目前惟一能稳定运行在从微型机 到大、中型等各种机器上的OS,而且还能方便地将已配置 了UNIX OS的机器互连成计算机网络。
2019-8-12
感谢你的观赏
15
第十章 UNIX系统内核结构
10.1.3 UNIX系统的内核结构
可以把整个UNIX系统分成四个层次。其最低层是硬件, 作为整个系统的基础。次低层是OS核心,包括前面所介绍的 进程管理、存储器管理、设备管理和文件管理四大资源管理 功能。上面第二层是OS与用户的接口Shell以及编译程序等。 最高层是应用程序。作为OS的核心,它应具有两方面的接口: 一方面是核心与硬件的接口,它通常是由一组驱动程序和一 些基本的例程所组成的;另一方面就是核心与Shell的接口, 它由两组系统调用及命令解释程序等所组成。核心本身又可 分成两大部分:一部分是进程控制子系统;另一部分则是文 件子系统。 两组系统调用分别与这两大子系统交互。图10-1 示出了UNIX核心的框图。
2019-8-12
感谢你的观赏
13
第十章 UNIX系统内核结构
4.丰富的网络功能
UNIX系统还提供了十分丰富的网络功能。作为Internet网 络技术基础的TCP/IP协议, 便是在UNIX系统上开发出来的, 并已成为UNIX系统不可分割的部分。UNIX系统还提供了许 多最常用的网络通信协议软件,其中包括网络文件系统NFS 软件、客户/服务器协议软件Lan Manager Client/Server及 IPX/SPX软件等。通过这些产品可以实现在各UNIX 系统之间, UNIX与Novell的Netware,以及MS-Windows NT、IBM LAN Server等网络之间的互连和互操作。
第九章UNIX内核结构.
消息的发送
系统调用 msgsnd()可用来发送消息。 msgsnd(msgid,msgp,msgsz,msgflg)
msgid表示消息队列标识,即消息要发送到的消息 队列。 msgp指向要发送的消息 msgsz要发送的消息的大小 msgflg规定当无内存空间存储消息时,进程是等待 还是立即返回。
2
9.1.2 UNIX系统结构
UNIX简略结构
用户程序
编译程 序
Shell edit kernel
硬件
实用程序
3
UNIX核心框图
用户程序
陷入
程序库
系统调用接口
文件子系统
IPC
缓存
字符
设备驱动
进程控制 子系统
调度程序 存储管理
核 心 部 分
块
硬件控制
硬
件
4
UNIX层次结构说明
硬件:可以是便携机、个人机、工作站、大中小型 机等
29
进程从核态返回目态时要检测信号位,若某 位被置位则中断正在执行的程序,转向与该信 号对应的处理程序。完成后返回断点执行。 信号机制是对中断机制的模拟,故在早期又 称软中断。
30
信号机制与中断机制的比较
相同点: 都采用异步通信方式 当检测到信号或中断时,暂停当前程序的执 行,转去执行相应处理程序 处理完后回到断点 信号和中断都可进行屏蔽
Ppri= Pcpu/2+PUSER+Pnice+NZERO
其中: 。PUSER,NZERO—是优先数基值; 。Pcpu—是每个进程最近一次使用 CPU的时间;
。Pnice—是用户设置的进程优先数偏移值。 普通用户只可增大Pnice
24
UNIX操作系统简介PPT课件
文件 类型 文件
权限
属主 组
链接 数
文件 大小
文件 创建 日期 时间
文件 名
-
P13
UNIX文件信息
文件类型:-
1983年,贝尔实验室发布第一个商业版本的UNIX,系统V的版本1, 即SVR1。
-
P44
UNIX标准版本
传统的UNIX标准版本主要如下两个: UNIX System V 原是AT&T公司制定的标准版本,后来成为工业
标准。目前流行版本是SVR 3.2、SVR 4.0、SVR 4.2 (SVR的全称 是System V Release) 。SCO UNIX就是采用的就是UNIX System V。
UNIX操作系统提示符一般为”#”。
进程(Process) 正在执行的程序。UNIX允许多个进程同时存在,每个进程
都有唯一代号称为进程标识符(pid --- process id)。
-
P28
几个基本概念
前台进程(Foreground process) 可以和用户直接进行人机交互的进程。前台进程程序可以接
3 设备文件 代表某种设备,一般放在/dev目录下,如 /dev/cd0表示光驱。设备文件可分为块设备文件和字符设备 文件,块设备文件以区块为输入输出单元,如磁盘;字符设 备文件是以字符作为输入输出单元,如串口。
4 符号链接文件包含一指针,指向文件的位置。
-
P12
UNIX文件信息
UNIX文件信息包括文件的类型、名字、大小、最近修改日期、操 作权限等等。如:
UNIX系统内核结构
4. 用户文件描述符表——记录该进程打开的所有文件
5. 当前记录和当前根——给出进程的文件系统环境 6. 计时器——记录进程及其后代在用户态和核心态运行的时间 7. 内部I/O参数——数据量、数据的地址和文件的I/O偏移量 8. 限制字段——进程的大小和能“写”的文件大小的限制 9. 差错字段——记录系统调用执行时发生的错误 10. 返回值——记录系统调用的执行结果
11. 信号处理数组——记录接收到不同信号时的处理方式
返回本节
第10章 UNIX系统内核结构
五、系统区表(System Region Table)
设置系统区表是为了对程序区(正文区)、数据区、 栈区等进行共享。该区表记录了下述信息。
1. 区的类型和大小
2. 区的状态 3. 区的物理位置
4. 引用计数(共享该区的进程数)
:屏蔽信号,对信号不理会
:缺省值;进程收到信号后自我终止
(3) func=0、1外的整数:把此func作为指向事件处理程序的指针 返回本节
第10章 UNIX系统内核结构
3、对信号的处理 1) 仅当进程返回到用户态时才处理信号 2) 对信号的处理:根据func值的情况进行处理
返回本节
第10章 UNIX系统内核结构
返回本节
第10章 UNIX系统内核结构
10.3 进程的同步与通信
10.3.1 sleep与wakeup同步机制 10.3.2 信号(signal)机制
10.3.3 管道机制
10.3.4 消息机制
10.3.5 共享存储区机制
10.3.6 信号量集机制
返回本章首页
第10章 UNIX系统内核结构
10.3.1 sleep与wakeup同步机制
最新《UNIX内核分析》PPT课件课件ppt
if (p→p-stat==SSLEEP&&p→p-pri>PZERO)
/*p在可被中断优先级睡眠
setrun(p) ; }
/*运行指定进程,或调入/必要时
Issig();测试软中断信号,若收到不可忽略信号,返回真;
否则,返回假。
软中断处理入口表u-signal[NSIG]
根据表项中元素不同值,有三种信号处理方式 值为0:处理方式为终止本进程; 值为奇数:对该信号不作处理; 值为非零偶数:表示信号处理程序入口地址。
页长字段PLF:说明虚页的实际使用长度,1~128块 如果ED=0/向高地址方向扩展:则PLF=实际使用 长度-1;例如:实际使用长度为128,则PLF=127 如果ED=1:则PLF=128-实际使用长度;例如: 实际使用长度为128,则PLF=0 用补码表示实际使用长度 PLF值表示在相应扩展方向上该虚页实际使用的最 末块块号,便于越界检查
扩展方向位:ED(extend)
如果某页实际使用小于128块(8KB),则ED说明空白部分在高/低 地址一侧,即扩展时的扩展方向。
ED=0: 高地址一侧; ED=1: 低地址一侧 例如:Unix系统中,共享代码段/数据段:ED=0;栈段: ED=1
内存管理寄存器(3)
存取信息位W-修改位 W=1,表示修改过
12 11
0
内存管理寄存器(2)
PLF/page length field W
15 14
86
ED ACF 3 21 0
页说明寄存器PDR/上图
存取控制字段ACF(access control field):说明对该页的 存取控制权限
00:不驻在内存 10:未用
01:read only 11:R/W
UNIX系统概述
UNIX进程和存储管理简介
UNIX系统的核心部分从整体上说可以分为两大部 分,即“静”的文件系统和“动”的进程控制系 统。 文件系统主要用来存放、管理那些暂时不被处理 机执行的程序和数据,它为程序和数据文件分配 空间,控制文件存取和为用户检索信息。 进程控制系统则负责为将要执行的程序和数据文 件分配内存空间,并负责进程调度、控制并发进 程的执行速度和分配必要的资源,以及负责进程 通信和内存管理等 UNIX 的进程控制系统与文件系统之间通过系统调
UNIX 系统结构
UNIX系统结构
UNIX系统结构分为三层: 最低层是硬件。 次低层是UNIX操作系统核心,它包括文件控制系统和 进程控制系统两大部分。 上面第二层(中间层)是shell命令解释层、实用程序、 库函数等。 该层中的shell解释程序是用户和UNIX操作系统的操作 界面。 最外层是用户程序,包括许多应用软件。 UNIX的系统结构如图所示:
UNIX的进程存储管理采用交换(swapping)和请求调页 (demand paging)两种策略完成。 1)交换存储策略 交换操作由进程0完成(与进程调度共同进行),早期 UNIX采用全交换策略(调度时在内存和交换区间传送整个 进程),新版UNIX采用部分交换策略(每次只交换进程的 部分内容)。 2)请求调页策略(页式虚拟存储管理策略) 进程的proc结构存入常驻内存页面; 当发生进程调度时,将user结构及部分页面=》工作集; 当访问的页面不在工作集时,发生缺页中断; 缺页中断 处理程序更新工作集的内容。
Unix 中的进程
在不同的执行模式下执行时,同一进程使用不同的堆栈 和不同的管理数据结构。在两种不同模式下执行的程序 不能互相访问各自的堆栈,它们之间的参数传递需要借 助通用寄存器等硬件。 用户态下的进程能存取它们自己的指令和数据,但不能 存取核心指令和数据。核心态下的进程能存取核心和用 户地址。 UNIX进程的核心态和用户态之间的转换靠中断以及硬件 设置等方法完成,当用户进程由用户态转向核心态执行 时,需要依靠中断或陷阱来实现。在核心态执行的进程 只有通过设置程序状态寄存器PSW才能回到用户态。
《UNIX操作系统》课件
数据库备份与恢复
MySQL、PostgreSQL等
MongoDB、Redis等
phpMyAdmin、MySQL Workbench等
定期备份、灾难恢复等
自动化部署工具
Ansible、Chef等
监控工具
Zabbix、Nagios等
日志管理工具
ELK Stack(Elasticsearch、Logstash、Kibana)等
持续集成与持续部署(CI/CD)
Jenkins、GitLab CI/CD等
THANKS
感谢您的观看。
《Unix操作系统》PPT课件
目录
Unix操作系统概述Unix系统基础Unix系统管理和维护Unix网络配置和管理Unix系统编程Unix系统应用实例
01
CHAPTER
Unix操作系统概述
01
1969年,AT&T的贝尔实验室的肯·汤普森和丹尼斯·里奇开发出了Unix的原型。
02
1973年,Unix正式发布,并被移植到了PDP-11小型机上。
函数与程序结构
介绍函数的定义、声明和调用,以及程序的基统调用与库函数的比较与选择
06
CHAPTER
Unix系统应用实例
Web服务器软件
Apache、Nginx等
性能优化
缓存、负载均衡等
安全性配置
防火墙设置、SSL证书配置等
配置过程
安装、配置、测试、优化
关系型数据库
非关系型数据库
磁盘管理
掌握磁盘分区、格式化、挂载和卸载等操作,维护磁盘空间和文件系统。
系统日志
查看和分析系统日志,及时发现和解决系统问题。
02
03
UNIX系统内核结构.
(1) 关闭软中断。
(2) 回收资源。
(3) 写记账信息。
(4) 置进程为“僵死”状态。
第九章 UNIX系统内核结构
4. wait系统调用 wait系统调用用于将调用进程挂起, 直至其子进程因暂 停或终止而发来软中断信号为止。如果在wait调用前,已有 子进程暂停或终止,则调用进程做适当处理后便返回。核心 对wait调用做以下处理:核心查找调用进程是否还有子进程, 若无,便返回出错码;如果找到一个处于“僵死”状态的子 进程,便将子进程的执行时间加到其父进程的执行时间上,
2. 文件子系统
(1) 文件管理。
(2) 高速缓冲机制。 (3) 设备驱动程序。
第九章 UNIX系统内核结构
10.2 进程的描述和控制
10.2.1 进程控制块PCB
在UNIX系统Ⅴ中, (1) (2) U区。 (3) 进程区表。 (4) 系统区表。
第九章 UNIX系统内核结构
1. 进程表项(Process Table Entry) (1) 进程标识符(PID)。
志runrun予以置位,以引起调度程序重新调度。其次,当进程
执行了wait、exit及sleep等系统调用后要放弃处理机时, 也会 引起调度程序重新进行调度。此外,当进程执行完系统调用 功能而从核心态返回到用户态时,如果系统中又出现了更高 优先级的进程在等待处理机时,内核应抢占当前进程的处理
机, 这也会引起调度。
(2) 用户标识符(UID)。
(3) 进程状态。 (4) 事件描述符。
(5) 进程和U区在内存或外存的地址。
(6) 软中断信息。 (7) 计时域。
(8) 进程的大小。
(9) 偏置值nice。 (10) P-Link指针。 (11) 指向U区进程正文、 数据及栈在内存区域的指针。
《UNIX基础》课件
教育领域
许多大学和培训机构使用Unix作 为教学平台,以教授学生系统管
理和软件开发技能。
02
Unix系统基础
文件系统结构
1 2
3
文件系统概述
文件系统是Unix系统中用于存储和管理数据的重要结构,它 采用树形结构,根目录为“/”。
目录结构
目录是文件系统中的一种特殊类型的文件,用于存储其他文 件和目录的名称和路径。
网络接口管理
网络接口的管理包括接口状态的监控、流量控制、故障排除等,以 确保网络连接的稳定性和可靠性。
网络服务和应用配置
网络服务概述
01
网络服务是运行在网络上的软件,如Web服务器、邮件服务器
等。
常用网络服务配置
02
常见的网络服务包括Apache Web服务器、Postfix邮件服务器
等,配置这些服务需要了解服务的安装、配置和管理。
02
03
移动
使用 `mv` 命令移动或重命名文件或目 录。
文件内容的查看和编辑
查看
使用 `cat` 命令查看文件内容,使用 `more` 和 `less` 命令分页查看。
编辑
使用 `vi` 或 `nano` 等文本编辑器编辑 文件内容。
文件查找和定位
查找
使用 `find` 命令在目录树中查找文件, 使用 `locate` 命令根据名称快速查找文 件。
IP地址与DNS
IP地址是网络中计算机的唯一标识,DNS用于将域名解析为IP地址 ,实现域名解析和网络浏览。
网络接口配置和管理
网络接口概述
网络接口是计算机与网络连接的硬件设备,如以太网、无线网卡 等。
网络接口配置
网络接口的配置包括IP地址、子网掩码、网关等参数的设置,以确 保计算机能够正常接入网络。
《UNIX操作系统》课件
欢迎来到《UNIX操作系统》PPT课件!通过本次课程,您将深入了解UNIX操作 系统的各个方面,包括操作系统概述、UNIX文件系统、UNIX命令行界面、 UNIX图形界面、UNIX网络和安全、UNIX应用程序开发等。
操作系统概述
操作系统的定义,功能以及常见的操作系统类型。
UNIX操作系统
UNIX操作系统的背景,特点以及架构。本概念,组织方式以及目录结构。
UNIX命令行界面
UNIX命令行界面的基本操作,常见命令以及配置与优化。
UNIX图形界面
UNIX图形界面的发展历史,基本操作以及窗口管理器和桌面环境。
UNIX网络和安全
UNIX网络的基本概念,配置和管理以及安全问题和解决方法。
UNIX应用程序开发
UNIX应用程序开发的基本概念,常用编程语言以及主要工具和框架。
UNIX操作系统的未来
UNIX操作系统的发展趋势,应用场景以及前景展望。
unix概述.ppt
操作系统的运行过程
UNIX 操作系统
UNIX的发展历史
1969年
•
美国 AT&T Bell Labs实验室在大型计算机PDP-7首次
开发出多用户、多任务的操作系统 UNIX
形成产品UNIX SYSTEM
1974年
•
Berkeley System Research Group 开发出BSD UNIX系统
操作系统任务
1、管理、分配硬件资源
实现应用程序与计算机资源的交互 实现应用程序需求硬件资源的合理分配 解决多任务、多用户对资源请求的冲突
2、调度、控制计算任务
利用分时机制,合理有效的处理多任务、多用户 对CPU和系统资源的控制调度。
操作系统组成
1、内核(kernel) 操作系统最基本最核心的部分,运行在最 高特权优先级,操作系统的版本更新主要 就是对此而言。
DOS , WINDOWS
操作系统内核—层次结构
应用程序
应用程序
系统服务 文件系统 内存和I/O设备管理 处理器调度
硬件
系统按照不同的功能分成 若干层次。系统的调用具有严 格的权限限制,任一层次上的 代码只能调用相邻较低层次的 接口。
系统为应用程序提供了一 套唯一的调用接口。用户程序 不能直接调用系统的核心数据, 必须通过系统调用才能获得服 务。
UNIX 主要应用环境平台
不同UNIX系统的差异主要体现在适应不同厂商的硬件环境. 但其程序结构符合国际标准IEEE POSIX,而且命令形式基本相同
POSIX (Portable Operating System Interface for uniX)
1. 可移植操作系统接口标准,用于UNIX。
学习的内容
设备管理第10章UNIX系统内核结构
1、2、8、17
38
用 户
fp
种
情B
况用 户
fp
文件表
f_offest f_inode f_flag f_count f_offest f_inode f_flag
…
…
内存索引结点 第i个内存索引结点 第j个内存索引结点
第 二 种
C 用 户
fp
情D
况用 户
fp
…
…
f_count
f_offest f_inode
…
第k个内存索引结点
12
第十章 UNIX系统内核结构
10.2.4 进程调度与切换
1、引起进程调度的原因 2、 调度算法 3、进程优先级的分类 4、 进程优先数的计算
优先数 最近使用CPU的时间 基本用户优先数 2
5、进程切换
13
第十章 UNIX系统内核结构
10.3 进程的同步与通信
1、sleep与wakeup同步机制 2、信号(signal)机制 3、管道机制 4、消息机制 5、共享存储区机制 6、信号量集机制
21
第十章 UNIX系统内核结构
10.5 设 备 管 理
10.5.1 字符设备缓冲区管理
1、空闲字符缓冲区队列
cblock[0] cfreelist c_next
cblock[1] c_next
cblock[2] c_next
cblock[N1]
…
c_next
图 10-12 空闲字符缓冲区队列 2、 空闲字符缓冲区的分配与回收 3、 设备的字符缓冲区队列
34
第十章 UNIX系统内核结构
2、空闲盘块的组织
超级块表
UNIXLinux基本结构
UNIX/Linux基本结构图1-3UNIX系统的高层次的体系结构图1-3绘出了UNIX系统的高层次的体系结构。
图中心的硬件部分向操作系统提供基本服务。
操作系统直接与硬件交互,向程序提供公共服务,并使它们同硬件特性隔离。
当我们把整个系统看成层的集合时,通常将操作系统称为系统内核,或简称内核,此时强调的是它同用户程序的隔离。
因为程序是不依赖于其下面的硬件的,所以,如果程序对硬件没做什么假定的话,就容易把它们在不同硬件上运行的UNIX 系统之间迁移。
比如,那些假定了机器字长的程序就比没假定机器字长的程序更难以搬到其他机器上。
外层的程序,诸如shell及编辑程序(vi),是通过引用一组明确定义的系统调用而与内核交互的。
这些系统调用通知内核为调用程序做各种操作,并在内核与调用程序之间交换数据。
图1-3中出现的一些程序属于标准的系统配置,就是大家所知道的命令。
但是由名为a.out的程序所指示的用户自有程序也可以存在于这一层。
此处的a.out是被C编译程序产生的可执行文件的标准名字。
其他应用程序能在较低的程序层次之上构筑而成,因此它们存在于图1-3的最外层。
比如,标准的C编译程序cc就处在图1-3的最外层;它引用C预处理程序、两次编译程序、汇编程序及装入程序(称为连接-编译程序),这些都是彼此分开的底层程序。
虽然图1-3对应用程序只描绘了两个级别的层次,但用户能够对层次进行扩充,直到级别的数目适合于自己的需要。
确实,为UNIX系统所偏爱的程序设计风格鼓励把现存程序组合起来去完成一个任务。
一大批提供了对系统的高层次看法的应用子程序及应用程序,诸如shell、编辑程序、SCCS(Source Code Control System)及文档准备程序包等,都逐渐变成了"UNIX系统"这一名称的同义语。
然而,它们最终都使用由内核提供的底层服务,并通过系统调用(System Call)的集合利用这些服务。
第十章 UNIX系统内核结构.ppt
2019-8-12
感谢你的观赏
10
第十章 UNIX系统内核结构
10.1.2 UNIX系统的特征
1.开放性
UNIX系统最本质的特征是开放性。所谓开放性,是指 系统遵循国际标准规范;凡遵循国际标准所开发的硬件和软 件,均能彼此兼容,并可方便地实现互连。开放性已成为20 世纪90年代计算机技术的核心问题,也是一个新推出的系统 或软件能否被广泛应用的重要因素。人们普遍认为: UNIX是 目前开放性最好的OS,是目前惟一能稳定运行在从微型机 到大、中型等各种机器上的OS,而且还能方便地将已配置 了UNIX OS的机器互连成计算机网络。
2019-8-12
感谢你的观赏
4
第十章 UNIX系统内核结构
2.两大集团对峙
在UNIX系统的发展史上必须说明的是,由于UNIX的开 放性、发展概念和商业利益等因素,使UNIX呈现出“百家争 鸣”的盛况,后又进一步形成了两大阵营对峙的局面。 此即, 由IBM和DEC等公司于1988年5月结成了开放软件基金会OSF 集团,以及由AT&T、SUN和NCR等公司于同年12月结成了 UI集团。他们分别推出了自己的UNIX系统产品。其中,UI推 出的是“SVR 4”,而OSF推出的是“OSF/I”。虽然两者都 是UNIX,但它们在系统构架、命令操作以及管理方式上,都 有所不同。两者在市场上展开了激烈的竞争。
1.UNIX系统的发展
UNIX系统是美国电报电话公司(AT&T)Bell实验室的 Ennis Ritchie和Ken Thompson合作设计和实现的。他们在设 计时,充分地吸取了以往OS(其中包括著名的CTSS和 MULTICS系统)设计和实践中的各种成功经验和教训。在 DEC公司的小型机PDP7上实现并于1971年正式移植到PDP11 计算机上。
UNIX、AIX操作系统
UNIX,AIX操作系统基础教程第一章简述Unix的主要版本商业的非开放系统有AT&T的System V或BSD基于BSD的系统,最有名的是FreeBSDLinuxUnix操作系统结构由内核(Kernel)、Shell、应用程序和各类用户程序组成,如图图1. Unix操作系统结构图内核:是Unix的核心部分,能与硬件直接交互,常驻内存。
驻留模块:完成输入输出、文件和设备的管理、内存和处理器管理,常驻内存。
系统工具:又称Shell,是Unix操作系统的一部分,是用户与Unix的交互接口,常驻磁盘,用户登录时调入内存。
Unix的内核由两部分组成1)进程控制子系统:负责处理器和存储器管理,如进程控制fork()创建进程、exit()结束进程、进程调度(CPU的分配)、进程通信的消息机制、段页式存储器管理。
2)文件子系统:完成所有设备(输入输出设备)和文件管理,为文件分配存储空间,管理空闲磁盘块,控制文件的存取和用户数据的检索,高速缓冲机制(使核心与外设速率相匹配),设备驱动程序(设备分为块设备和字符设备)。
图2. Unix操作系统内核框图Unix的启动流程首先运行boot程序,把/stand目录下的boot文件用/etc/default/boot文件中定义的配置参数装内核程序打开检测能找到硬件、初始化各种核心列表,安装系统的根文件系统rootfs,打开交换设备并打印配置信息形成0号进程由0号进程产生1号进程,0号进程随即转为对换进程,1号进程就是所有进程的祖先 1号进程为每个登录的用户创建终端进程,这些用户再利用进程创建系统调用来创建子进程,形成进程树图3. Unix操作系统启动流程Unix操作系统的1号进程是一个系统服务进程,一旦创建,不会自行结束,只有在系统需要撤销它们提供的系统功能或关机的情况下才会发生1号进程结束。
Unix操作系统用户分类超级用户:又称root用户,是系统管理员,在Unix安装时自动创建,超级用户登录后提示符一般显示为“#”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十章 UNIX系统内核结构
3. 系统区表(System Region Table) (1) 区的类型和大小。 (2) 区的状态。 (3) 区在物理存储器中的位置。 (4) 引用计数。 (5) 指向文件索引结点的指针。
10
第十章 UNIX系统内核结构
4. 本进程区表(Per Process Region Table)
第十章 UNIX系统内核结构
第十章 UNIX系统内核结构
10.1 UNIX 系统概述 10.2 进程的描述和控制 10.3 进程的同步与通信 10.4 存储器管理 10.5 设备管理 10.6 文件管理
1
第十章 UNIX系统内核结构
10.1 UNIX系统概述
10.1.1 UNIX 系统的发展史
1. UNIX 2. 两大集团对峙 3. 网络操作系统UNIX
(1) 关闭软中断。 (2) 回收资源。 (3) 写记账信息。 (4) 置进程为“僵死”状态。
17
第十章 UNIX系统内核结构
4. wait系统调用
wait系统调用用于将调用进程挂起, 直至其子进程因暂 停或终止而发来软中断信号为止。如果在 wait调用前,已有 子进程暂停或终止,则调用进程做适当处理后便返回。核心 对wait调用做以下处理:核心查找调用进程是否还有子进程, 若无,便返回出错码;如果找到一个处于“僵死”状态的子 进程,便将子进程的执行时间加到其父进程的执行时间上, 并释放该子进程的进程表项; 如果未找到处于“僵死”状 态的子进程,则调用进程便在可被中断的优先级上睡眠,等 待其子进程发来软中断信号时被唤醒。
6
第十章 UNIX系统内核结构
10.2 进程的描述和控制
10.2.1 进程控制块 PCB
在UNIX系统Ⅴ中, (1) (2) U区。 (3) 进程区表。 (4) 系统区表。
7
第十章 UNIX系统内核结构
1. 进程表项(Process Table Entry)
(1) 进程标识符(PID)。 (2) 用户标识符(UID)。 (3) 进程状态。 (4) 事件描述符。 (5) 进程和U区在内存或外存的地址。 (6) 软中断信息。 (7) 计时域。 (8) 进程的大小。 (9) 偏置值nice。 (10) P-Link指针。 (11) 指向U区进程正文、 数据及栈在内存区域的指针。8
第十章项指针。 (2) 真正用户标识符u-ruid(real user ID)。 (3) 有效用户标识符u-euid(effective user ID)。 (4) 用户文件描述符表。 (5) 当前目录和当前根。 (6) 计时器。 (7) 内部I/O参数。 (8) 限制字段。 (9) 差错字段。 (10) 返回值。 (11) 信号处理数组。
1. 进程状态 中断
中断返回
僵死
系统调 用 中断 5 返回
用户态 执行 返回到用户态
内存中 睡眠
睡眠 且换出
9 睡眠
6
换 出
4
核心态 执行
唤醒
抢夺 调度
8 被抢夺
2 内存中就绪
换换 出入
内存足 创建fork 1
内存不 足
7
唤醒
3 就绪且 换出
13
图 10-4 进程的状态转换
第十章 UNIX系统内核结构
A 正文 进
程 数据
区 表栈
a
a
b
b
c
c
B 正文 进
程 数据
区 表栈
d e
系统区表
d e
图 10-2 进程区表项、系统区表项和区的关系 11
第十章 UNIX系统内核结构
本进程区表 U区
进程表
系统区表
a
b c
a
b
c
图 10-3 进程的数据结构
12
第十章 UNIX系统内核结构
10.2.2 进程状态与进程映像
15
第十章 UNIX系统内核结构
2. exec系统调用
trap path arg v
文 件 名字 符 串 参 数 字符 串
0 arg 2p arg 1p arg 0p
图 10-5 exec Ⅴ的参数组织方式 16
第十章 UNIX系统内核结构
3. exit系统调用 通常,父进程在创建子进程时,应在进程的末尾安排 一条exit,使子进程能自我终止。内核须为 exit完成以下操
18
第十章 UNIX系统内核结构
10.2.4 进程调度与切换
1.
首先,由于 UNIX系统是分时系统,因而其时钟中断处理 程序须每隔一定时间,便对要求进程调度程序进行调度的标 志runrun予以置位,以引起调度程序重新调度。其次,当进程 执行了wait、exit及sleep等系统调用后要放弃处理机时, 也会 引起调度程序重新进行调度。此外,当进程执行完系统调用 功能而从核心态返回到用户态时,如果系统中又出现了更高 优先级的进程在等待处理机时,内核应抢占当前进程的处理 机, 这也会引起调度。
19
第十章 UNIX系统内核结构
2. 调度算法 进程调度,在此是采用动态优先数轮转调度算法。 调度程序在进行调度时,首先从处于“内存就绪”或 “被抢占”状态的进程中,选择一个其优先数最小 (优先 级最高 )的进程。若此时系统中 (同时)有多个进程都具有 相同的最高优先级,则内核将选择其中处于就绪状态或 被抢占状态最久的进程,将它从其所在队列中移出,并 进行进程上下文的切换, 恢复其运行。
文件子系统
高速缓存
字符设备
块设备
设备驱动程序
进程控制 子系统
进程间通信 调度
存储管理
核心级 硬件级
硬件控制 硬件
图框的心核
图
1- 0 1 UNIX
4
第十章 UNIX系统内核结构
1. (1) 进程控制。 (2) 进程通信。 (3) 存储器管理。 (4) 进程调度。
5
第十章 UNIX系统内核结构
2. 文件子系统 (1) 文件管理。 (2) 高速缓冲机制。 (3) 设备驱动程序。
2
第十章 UNIX系统内核结构
10.1.2 UNIX 系统的特征
1) 开放性 2) 多用户、 多任务环境 3) 功能强大, 实现高效 4) 提供了丰富的网络功能 5) 支持多处理器功能
3
第十章 UNIX系统内核结构
10.1.3 UNIX 系统的内核结构
捕俘
用户程序
用户级 核心级
系统调用接口
库函数
2. 进程映像
1) 用户级上下文 2) 寄存器上下文 (1) 程序寄存器。 (2) 处理机状态寄存器(PSR)。 (3) 栈指针。 (4) 通用寄存器。 3) 系统级上下文 (1) 静态部分。 (2) 动态部分。
14
第十章 UNIX系统内核结构
10.2.3 进程控制
1. fork系统调用 (1) 为新进程分配一个进程表项和进程标识符。 (2) 检查同时运行的进程数目。 (3) 拷贝进程表项中的数据。 (4) 子进程继承父进程的所有文件。 (5) 为子进程创建进程上下文。 (6) 子进程执行。