没有合适的资源?快使用搜索试试~ 我知道了~
计算机软件基础:02第一章操作系统.doc
0 下载量 73 浏览量
2022-11-26
17:25:02
上传
评论
收藏 1.05MB DOC 举报
温馨提示
试读
13页
计算机软件基础:02第一章操作系统.doc
资源推荐
资源详情
资源评论
《计算机软件基础》多媒体教程
第二讲
第一章 操作系统及 UNIX Shell
1.3 UNIX操作系统的发展史
UNIX 是一种分时操作系统,是当前工业主流的操作系统之一。
Linux 是一个优秀的类 UNIX 操作系统,现已成为一个先进和稳定的操作系统,丝毫不
逊于商业版的 UNIX。
1968~1969:Bell 实验室的 Ken.Thompson & Dennis.Ritchie 参与了分时操作系统
Multics 的设计
1970: Thompson 在 PDP-7 上用汇编语言实现了 UNIX
1971: Thompson 用 B 语言改写了 UNIX
1973: Ritchie 用 C 语言改写了 UNIX
1981: 两大主流版本,由 AT&T 推出的 UNIX System V 以及由 Berkeley 推出的
Bsd4.x
1991: 芬兰赫尔辛基大学 21 岁的大学生 Linus 在网上发表了第一个在 PC 上的 UNIX
-Linux 0.02 版本
1994: Linux 1.0 版本正式发布,并加入自由软件基金会(FSF)的 GNU 工程。
肯尼思·汤普森
K. Thompson
丹尼斯·里奇
D. Ritchie
李纳斯·托沃兹
Linus Torvalds
1.3.1 UNIX的发展历史和特点
※UNIX的特点
(1) 在结构上分为核心(kernel)和外围(shell)两部分,有机结合。
(2) 具有良好的用户界面,使用方便,功能齐全,清晰灵活,易扩充和修改,包括操作
命令(shell 命令)和系统调用。
(3) 采用树状文件结构
(4) 统一采用文件来管理普通文件、目录、设备等。
(5) 具有丰富的语言处理程序,实用程序和工具性软件,是一种开放性的操作系统,提
供完备的软件开发环境
(6) 90%用 C 语言编程,5%用汇编语言编程,易于移植、理解、修改和扩充
(7) 多任务系统,多用户、多进程,支持后台作业,能有效的管理 CPU 和内存资源,
提供安全保护
(8) 具有进程通讯功能
※UNIX的系统结构
UNIX 的系统结构由核心与外围两个部分组成。
shell命令
系统实用程序 应用软件
用 户
系统调用
外围
存储管理 设备管理
处理机和
进程管理
文件
系统
核心
计算机硬件
(裸机)
shell命令
系统实用程序 应用软件
用 户
系统调用
外围
存储管理 设备管理
处理机和
进程管理
文件
系统
核心
计算机硬件
(裸机)
※核心(kernel)
精心设计,简洁精干,只占很小空间,常驻内存。
核心包括处理机和进程管理、存储管理、设备管理和文件系统等四个模块。
※外围(shell)
用户界面是 UNIX 的外围。
把系统划分为核心与外围的 UNIX 结构,使其功能模块成为对内和对外两类模块。对内
而言,各种软件通过系统调用来使用核心,对外而言,用户可以通过 shell 来使用计算机。
1.3.2 Linux的发展历史和特点
※Linux
1991 年 10 月,芬兰赫尔辛基大学 21 岁的学生李纳斯-托沃兹(Linus Torvalds)在
comp.os.minix 新闻组上发表了如下消息:
“我正在设计一个(免费的)支持诸如 386(486)AT 计算机的操作系统(只是业余爱好而已,
不会太大也没有 GNU 那么专业)。”
Torvalds 的“业余兴趣”最终变成了现在的 Linux 操作系统。到 90 年代末,虽然 Linux
还只是一种发展不到 10 年的类 UNIX 操作系统,但它却引起了 PC 和因特网世界的革命。
世界上数百万计算机用户在他们的家用 PC 和办公室工作站上使用 Linux。
※GNU
Linux 与 GNU 关系密切。GNU 工程由自由软件基金会(FSF)于 1984 年发起,旨在开
发一个类似 UNIX,且为自由软件的完整操作系统:GNU 系统。GNU 是由“GNU‘s Not
Unix”所递归定义出的首字母缩写,读为 gun-noo。GNU 认为,以 Linux 为内核的 GNU 操
作系统应该更精确地被称为 GNU/Linux 系统。
※Linux操作系统和发行版
Linux 操作系统和 Linux 发行版有所区别,与 UNIX 的情况类似。
⊙Linux操作系统
一个基本的 Linux 操作系统包含 Linux 核心(Kernel)和 GNU 的一些基层系统软件和实
用工具(utilities),可供 Linux 专家完成一些很基本的系统管理任务。
⊙Linux发行版
将 Linux 操作系统和 GNU 软件整合,加入 XFree86 视窗系统、GNOME 或 KDE 桌面
环境、办公系统(如 OpenOffice)等配套软件,以及 shell 解释器、C/C++编译器、Perl 解释
器等应用程序,便成为了 RedHat 和 Suse 等销售商发布的 Linux 发行版。
※Linux的特点
(1) 抢占式(独占性)多任务
(2) 多用户(多路性)
(3) 设备无关性,将所有外部设备统一视作文件来处理。
(4) 开放性
遵循世界标准规范,符合 TCP/IP 网络协议。很容易和其他系统互操作,也可以作
为服务器。
(5) 高可扩展性、可维护性与开放源代码
(6) 优异的网络性能
Internet 是在 UNIX 领域建立的。Linux 通过免费提供大量具有强大网络功能的
Internet 网络软件,在通讯和网络功能方面明显优于其他操作系统。
(7) 可靠的系统安全
(8) 良好的可移植性(portability)
Linux 是一种可移植的操作系统,尤其是可移植到计算机工作站以及 PC 机。
※Linux系统的框架结构
Linux 一般由内核(kernel),命令解释器(shell),各种应用程序和实用工具所组成。
Linux 系统的框架结构与 UNIX 系统的框架结构非常相似。
shell命令解释器
应用程序 实用工具
存储管理进程管理 文件系统
计算机硬件(裸机)
系统软件
设备管理
内核
用 户
内核功能模块
1.4 UNIX 操作系统的功能模块
1.4.1 处理机和进程管理模块
※进程的构成
一个 进程 由内 存映 象和 进程 控制 块(PCB ,
Process Control Block)组成。
进程
代码段(code)
数据段(data)
内存映象
进程控制块
进程
代码段(code)
数据段(data)
内存映象
进程控制块
※进程调度算法
⊙进程分类以及设定进程优先级
系统进程—核心态(特权进程)
用户进程—用户态(普通进程)
系统进程比用户进程的优先级高
⊙进程优先级的控制
显示或改变进程的优先级: nice命令
⊙动态优先的进程调度算法
根据占有 CPU 的时间来动态改变优先级,可使各进程的响应时间较均匀。
※进程的状态控制
⊙支持前台进程和后台进程
在某一个时刻,用户在一个终端上只能运行一个前台进程,而可以运行多个后台进程。
⊙产生后台进程
如果a.out是一个比较费时的进程,而没有作为后台进程运行。例如:
$ a.out 将a.out作为前台进程运行
此时将处于等待的状态,不管a.out是否产生显示结果,必须等到结束后才能运行其他
命令。
假定需要把a.out作为后台进程运行,则应该在命令行后加&。例如:
$ a.out & 将a.out置为后台进程
[1] 26695 显示后台进程的进程号
$
此时将显示后台进程的进程号以及待命符,表示a.out进入后台,可以启动其他命令。
⊙将前台进程转入后台运行
如果运行a.out后,发现是一个比较费时的进程,一直在等待。如果希望在其结束之前
启动其他命令,则首先应该键入控制符^Z,使其暂停,然后使它成为后台进程。例如:
$ a.out 将a.out作为前台进程运行
此时将处于等待的状态
^Z 在a.out还没有结束时暂停该进程
$ bg 将其转为后台进程
[1] 26695 运行后台进程并且显示进程号
$ 显示待命符,表示可启动其他命令
⊙将后台进程转入前台运行
如果需要将处于后台的进程转为前台进程,则应该使用fg命令:
$ fg 将后台进程转入前台运行
此时不会显示待命符,而转向执行a.out。在a.out结束运行之前,不能启动其他命令。
⊙终止当前进程
<CTRL>C(或者 ^C)
⊙暂停当前进程
<CTRL>Z(或者 ^Z)
⊙显示进程信息
剩余12页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3707
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功