620 likes | 781 Views
3.2 计算机操作系统. 3.2. 1 什么是操作系统 3.2. 2 多任务处理 3.2. 3 文件与文件管理 3.2.4 存储管理 3.2.5 设备管理 3.2.6 常用操作系统. 3.2.1 什么是操作系统. 虚拟计算机. 计算机硬件. 什么是操作系统 (OS) ?. OS 屏蔽了计算机中几乎所有物理设备的技术细节,为使用、开发和运行其他软件提供了一个高效、可靠的平台。 OS 非常庞大和复杂,它由许多程序模块组成. 没有安装任何软件的计算机称为裸机 , 裸机是无法使用的 操作系统是最重要的一种系统软件,几乎所有计算机都要安装 OS.
E N D
3.2 计算机操作系统 3.2.1什么是操作系统 3.2.2多任务处理 3.2.3文件与文件管理 3.2.4 存储管理 3.2.5 设备管理 3.2.6 常用操作系统
虚拟计算机 计算机硬件 什么是操作系统(OS)? • OS屏蔽了计算机中几乎所有物理设备的技术细节,为使用、开发和运行其他软件提供了一个高效、可靠的平台。 • OS非常庞大和复杂,它由许多程序模块组成 • 没有安装任何软件的计算机称为裸机, 裸机是无法使用的 • 操作系统是最重要的一种系统软件,几乎所有计算机都要安装OS
分配系统中的资源 控制基本的输入/输出操作 管理存储器空间 维护计算机安全 监测计算机运行和故障 为什么需要操作系统?
操作系统的重要作用 • 三项主要作用: (1)为计算机中运行的程序管理和分配系统中的各种软硬件资源 (2)为用户提供友善的人机界面(图形用户界面) (3)为开发和运行应用程序提供高效率的平台 • 其它辅助功能: • 辅导用户操作(帮助功能) • 显示系统状态 • 处理软硬件错误 • 保护系统安全
复习:基本输入输出系统BIOS • 基本输入/输出系统是存放在主板上只读存储器(flash ROM) 中的一组程序(也称为firmware, 固件) • 主要包含4个部分: • 加电自检程序 (诊断计算机故障) • 系统自举(装入)程序 (装入并启动OS工作) • CMOS设置程序 (设定和修改计算机配置) • 基本外围设备的驱动程序 (控制基本的I/O操作) • 计算机断电后,BIOS程序和CMOS中的数据仍保持不变 • 需要时BIOS程序可以升级(update)
⑤ 装入引导程序 ⑦ 装入操作系统 ⑥执行 引导 程序 ⑧运行 操作 系统 CMOS 读 硬 盘 出 ③ 引 从 显示初始界面 何 导 处 启 动 程 ? 序 ② 执行自举装入程序 问题:什么是冷启动?什么是热启动{Ctrl}+{Alt}+{Delete} ? ① 执行加电自检程序 ④ 操作系统的启动(boot up) RAM CPU ROM BIOS
用 户 用户 接口外壳 应用 程序1 应用 程序2 应用 程序3 应用 程序k 正在运行的应用程序 内 存 储 器 应用程序接口(API) 操 作 系 统 窗口 管理 设备 管理 文件 管理 存储 管理 处理器 管理 文件系统,网络通信程序 设备驱动程序 其它计算机硬件 操作系统运行时内存的态势
问题1:如何安装应用程序? • 应用程序买来以后或者从网上下载以后,必须使用安装程序进行安装 • 安装程序一般称为setup.exe或install.exe,此外还有一个安装说明(文件名一般称为readme) • 软件安装时可能需要使用该软件的产品序列号,产品序列号贴在包装盒上或存放在sn.txt文件中 • 安装程序、安装说明、序列号等通常就包含在该软件的文件夹中 • 有些软件安装时会启动一个安装响导(wizard),用户只要按照该响导的提示一步一步进行即可 • 安装成功后,会在开始菜单的“所有程序” 菜单中有一个启动它运行的选项
问题2:如何启动应用程序运行? • 最基本的方法是从“开始菜单”进行启动 • 在桌面上双击应用程序的快捷方式图标来启动应用程序(很多程序在安装后都会将该程序的快捷方式图标放到桌面上以便经常使用) • 最近最常使用的应用程序可使用“开始”菜单左侧的一列程序按钮进行启动 • 通过双击需要处理的文档来启动处理该文档的应用程序 • 通过任务栏中的“快速启动”栏中的按钮进行启动( 有无“快速启动”栏可以自己设置) • 在开始菜单的“运行”对话框中输入命令
什么是任务,什么是多任务处理? • “任务”指的是要计算机做的一件事,计算机执行一个任务通常就对应着运行一个应用程序 • “单任务处理”与“多任务处理” • 单任务处理:前一个任务完成后才能启动后一个任务的运行,任务是顺序执行的 • 多任务处理(Multitasking):允许计算机同时执行多个任务,任务是并发执行的 • 多任务处理举例: • 编辑PPT讲稿 + 播放音乐 + 收发邮件 • 多任务处理的优点: • 大大提高了用户的工作效率 • 大大提高了计算机的使用效率
多任务处理举例 制作PPT讲稿 查看文件夹内容 收发电子邮件 播放音乐
如何知道有哪些任务在运行? • 每启动一个应用程序,OS就会打开一个相应的窗口,通常一个窗口就是一个任务 • 每启动一个应用程序,OS就会在任务栏上显示一个相应的任务按钮(程序按钮),通常一个按钮就是一个任务 • 窗口可以放大或缩小,甚至可以“最小化”,但任务的运行不受其影响 • 使用“任务管理器”程序可以了解每个任务的运行情况
什么是前台任务与后台任务? • 前台任务:能接受用户输入(击键或按击鼠标)的窗口只能有一个,称为活动窗口,它所对应的任务称为前台任务 • 后台任务:除前台任务外,所有其它任务均为后台任务 • 前台任务与后台任务的区别: • 前台任务对应的窗口(活动窗口)位于其它窗口的前面 • 活动窗口的标题栏比非活动窗口颜色更深(深蓝色) • 前台任务与后台任务的共同点:都在计算机中运行 • 前台任务与后台任务的切换: • 为了输入信息到某个后台任务中去,必须切换窗口(单击要激活的后台任务窗口的任何部位, 或单击任务栏中对应的任务按钮)
如何结束任务的运行? • 每一个应用程序运行时都要占用大量的系统资源(存储器、CPU、屏幕等),所以当不再需要某个应用程序运行时,就应该退出这个应用程序,释放它所占用的资源 • 多数应用程序都设计成交互式控制的方式,所以运行完毕后必须由用户退出该程序。 • Windows XP中退出应用程序的几种方法: • 最快速的方法,是左击应用程序窗口右上角的红色“叉子”按钮 • 左击窗口左上角的控制按钮,在弹出菜单中选择“关闭” • 在应用程序的“文件”菜单中,选择“退出” • 通过OS的任务管理器,强迫结束任务
OS如何支持多任务处理? • 为什么可以实现多任务处理? • CPU速度极高,必须并且可以充分发挥CPU的效能 • CPU与I/O(外围设备)可以并行工作 • 各个外围设备之间可以并行工作 • 实现多任务处理要解决哪些问题? • CPU如何管理和调度 • 存储器空间如何分配和管理 • I/O设备和I/O操作如何管理和控制 • 谁来解决上述问题? • 不是应用程序自己,而是操作系统(OS) !
时间 任务1 任务2 任务5 任务3 任务4 任务 时间 CPU的管理(处理器管理) • 目的:让CPU轮流为所有任务服务 • 原则:公平性;优先级;负载均衡 • 方法: • 按时间片轮转(10-20ms为1个时间片 ) • 按优先级调度
Windows中的处理器管理 • Windows为了确保每个已经启动的任务都有机会运行,它采用“抢先式”多任务处理技术: • 由硬件计时器大约每10-20ms发出1次中断信号,Windows立即暂停当前正在运行的任务,查看当前所有的任务,选择其中的一个交给CPU去运行 • 只要时间片结束,不管任务有多重要,也不管它执行到什么地方,正在执行的任务就会被强行暂时终止 • 上述的任务调度,每秒钟要进行几十次~几百次 • 实际上,操作系统本身的若干程序也是与应用程序同时运行的,它们一起参与CPU时间的分配。当然,不同程序的重要性不完全一样,它们获得CPU使用权的优先级也有区别
3. 每个CPU负责完成分配给它的线程 Results are sequenced 1. 就绪线程排队等候进入CPU处理 Instructions 2. 那一个CPU空闲,就把等候的线程交给它执行 附:多任务处理与多核CPU • CPU瞬间可同时执行的线程(任务)数目: • 单核CPU:1 ■双核CPU:2 ■四核CPU:4
操作系统区 用户区 应用程序1 应用程序2 应用程序3 应用程序4 应用程序5 内存储器 系统运行时内存储器的布局 • 内存储器空间划分为2个部分:系统区和用户区,用户区用来存放正在运行的应用程序 每个应用程序运行时均有属于它自己的存储器空间,用来存储它自己的程序代码和数据 • 分析: • 允许同时运行多少程序?数目有没有限制? • 程序的大小和数据的规模受不受限制? • 程序与程序相互之间会不会互相干扰?
“存储管理”需要解决哪些问题? • 为每个任务分配存储空间,任务结束之后收回存储空间 • 对存储空间进行保护 • 保护操作系统所在区域不被应用程序修改 • 保护每个应用程序的私有区域不被其他程序修改 • 对存储空间进行扩充,使应用程序的存储空间不受实际存储容量大小的限制 解决方案——虚拟存储器(Virtual Memory)
程序运行需访问数据时,若其页面在物理内存,就直接访问内存,取出数据程序运行需访问数据时,若其页面在物理内存,就直接访问内存,取出数据 若物理内存 已满,需换 出一页 直接 访问 逻辑 地址 映射 成为 物理 地址 页面1 页面2 页面3 页面4 页面k 从虚拟内存 读出一页 页面不在 物理内存 页表 磁盘中的 虚拟内存 物理内存 ···· 若需要访问的数据其页面不在物理内存,则就从磁盘中虚拟内存取出一页,装入物理内存 每个程序都在自己的虚拟空间中工作,虚拟空间比物理存储器大得多,它被分成许多“页” 虚拟空间中的页面一部分在物理内存,一部分在磁盘存储器中的虚拟内存,它们均登记在页表中 虚拟存储空间 虚拟存储器示意图 硬盘中专门划出一个“交换区”,作为物理内存的补充,称为“虚拟内存”
页号 块号 程序 i 的虚存空间 (4GB) 物理存储器 (512MB) 0 0 1 VP i1 2 VP i2 VP i1 ... 3 4 VP in 5 VP j1 N-1 6 页号 7 VP i2 8 程序 j 的虚存空间 (4GB) 0 9 VP j1 10 VP j2 VP j2 ... M-1 VP jm N-1 虚拟存储器的基本思想(1) 物理存储器也划分成为与“页” 相同大小的许多“块” 当启动应用程序运行时,OS仅把该程序的一部分“页”装入物理内存,其它页装到硬盘的交换区 每个应用程序的虚拟存储空间划分成为大小相同的许多“页” 每个应用程序使用一个独立的、专用的存储空间,它不受实际内存容量的限制,称之为“虚存空间”
页号 0: 页号 0: 页号1: 页号1: 读? 写? 程序 i 的页表 块 号 物理存储器 0: 页号2: 页号 2: Yes No 9 1: 每个已经启动运行的应用程序均有一张页表 Yes Yes 4 No No XXXXXXX • • • • • • • • • 程序 j 的页表 读? 写? 块 号 Yes Yes 6 Yes No 10 N-1: No No XXXXXXX • • • • • • • • • 硬盘 当程序需要访问指令或数据时,必须先检查“页表”,看看该指令或数据所属的页面在哪里 交换区 虚拟存储器的基本思想(2) • 当启动应用程序运行时,OS仅把该程序的一部分“页”装入物理内存,其它页装在硬盘的交换区中,并在 “页表”中进行登记: • 哪些页已装在内存,装在内存的什么位置 • 哪些页留在硬盘的交换区中,在什么位置
CPU 物理存储器 0: 1: 物理地址 逻辑地址 N-1: 磁盘上的交换区 虚拟存储器的工作过程(1) • 当CPU需要访问内存取指令或数据的时候,先查看“页表”: • 如果所在页面已经装在内存,那么从页表中找到其物理地址后就可以访问内存读取数据或指令 页表 0: 1: P-1:
Memory Memory 页表 页表 物理地址 物理地址 CPU 逻辑地址 逻辑地址 1 发现需要的页不在内存 Disk Disk Memory 页表 物理地址 CPU Disk 虚拟存储器的工作过程(2) 2 从硬盘交换区中读出该页,装入内存中的空闲位置,修改页表 3 从内存中读出需要的页
(1) 启动从磁盘读出一页 (3) 完毕 (2) 虚拟内存中的页直接装入内存 disk disk Disk Disk 附:如何从磁盘上读一页装入内存 CPU Reg Cache Memory-I/O bus I/O controller Memory
Windows XP的虚拟存储器 • Windows XP操作系统中: • 每个程序的虚存空间最大可达到4GB • 页面的大小通常是4KB • 虚拟内存是系统盘根目录下的一个名为pagefile.sys的文件,其大小和位置用户可设置 • 使用“任务管理器”可以查看: • 总的物理内存大小 • 可用物理内存大小 • 总的虚拟内存大小 • 可用虚拟内存大小等
(在操作系统中) 外存储器的存取特性: 适合于批量数据的存取,不适合单个数据存取 使用“文件”来组织外存储器中的信息,并用“文件”作为外存的存取单位 外存储器的使用特性: 1 每次从外存读出(或写入)的对象是一个程序或一个文档、一张图片、一封邮件、一首歌曲··· 2 按对象的名字进行存取操作,而不是按地址存取 文件 字节 CPU (按名存取) (按地址存取) “文件”概念的由来
什么是文件(file) ? • 文件是存储在外存储器中的一组相关信息的集合,例如: · 一个程序 · 一张数码相片 · 一只MP3歌曲 · 一封电子邮件 • 文件是外存中信息的存取(读出/写入)单位 • 计算机中所有的程序和数据都组织成为文件存放在外存储器中,并使用其名字进行存取操作
复习:文件名和文件类型 文件的名字由两部分组成:(主文件名) [.扩展名] • 主文件名(简称文件名)是文件的主要标识,不可省略 • 文件扩展名(类型名)由“.”加3~4个英文字母组成, 用于区分文件的类型: • 程序文件(可执行文件):.exe .com 文件中包含的是可以由CPU执行的程序的二进制代码 • 数据文件: ·纯文本文件(.txt) ·PDF文件(.pdf) · Word文件(.doc) ·投影片文件(.ppt) ·数码照片文件(.jpg) ·MP3音乐文件(.mp3) 文件中包含的是由程序处理的数据的二进制代码 • 处理不同类型的数据文件一般需要使用(关联)不同的程序! • 文件名字使用西文(或中文)字符组成,但不能使用某些特殊字符(如 ? * \ / < > :“”等)
文本文件 声音文件 图形、图像文件 动画/视频文件 Web网页文件 Windows XP 的文件 • 允许使用长文件名,即文件名最多可包含255个中文或西文字符 • 英文字母的大、小写只在形式上加以区分,实际上不予区别 (例如: Text.DOC与 text.doc是同一个文件) • 常用程序文件的扩展名: .exe .com .dll .bat • 常用数据文件的扩展名:
文 件 内 容 文件名等说明信息 • 文件名和文件扩展名 • 文件大小(长度) • 在磁盘上存放的起始位置 • 文件时间(创建时间、最近修改时间、最近访问时间等) • 文件创建者 • 文件属性 系统文件 隐藏文件 存档文件 只读文件 压缩 加密 编制索引 文件的组成和文件说明信息 • 每一个文件都由2部分组成:
目录区,用于存放文件的目录,即文件说明信息目录区,用于存放文件的目录,即文件说明信息 数据区,用于存放文件的内容 文件在磁盘中如何存储? • 磁盘分成两个区域:目录区和数据区 • 目录实质上是一张“文件名-存放位置”的对照表 文件内容 • 从磁盘上读出一个文件时,先在目录区中找出该文件的存放位置,然后再按此位置,从磁盘的数据区中读出该文件内容
\ 根文件夹 ··· ··· abc.txt 数据 应用程序 ··· ··· T1.txt P1.exe Pn.exe 概论 ··· 资料 讲稿 教案 ··· ··· ··· 02.ppt 05.pdf 01.doc 为什么使用多级文件夹? 1)有利于文件分类存储 2)允许文件同名(在不同 文件夹中时) 3)便于文件共享和保护 Windows XP 的文件组织 • 文件目录在Windows中称为文件夹 • 每个逻辑盘(物理盘或硬盘上的分区)是一个根文件夹 • 文件夹中既可包含文件,也可包含文件夹 (子文件夹) • 子文件夹又可存放文件和子文件夹, 形成树状多级文件夹结构 根节点和中间节点都是文件夹 叶节点都是文件
\ D盘根目录 ··· ··· abc.txt 数据 应用程序 ··· ··· T1.txt P1.exe Pn.exe 概论 ··· 资料 文件路径 讲稿 教案 ··· ··· ··· 02.ppt 05.pdf 01.doc Windows XP中文件如何定位? • 计算机中的每个文件都有一个确定的位置 • 文件的位置由存放文件的逻辑驱动器号、文件路径以及文件名组成: 驱动器号(盘符) + 文件路径 + 文件名 从根文件夹到文件所在文件夹所顺序经过的一串文件夹,其间用“\”相互隔开 例 右图中文件02.ppt的位置是: D:\数据\概论\讲稿\02.ppt
User 文件系统软件 (外存储设备) 文件管理和文件系统 • 文件系统需要解决的问题: • 有效管理外存储器的存储空间 • 实现对文件方便而快速的按名存取 • 对软盘、硬盘、光盘、优盘等不同外存储器实现统一管理 • 统一本地文件/远程文件的存取操作 • 实现文件的安全存取 • 文件系统是OS的一个组成部分,它负责管理计算机中的文件,使用户(和程序)能很方便地进行文件的存取操作
3.2.5 设备管理 • OS中的“设备管理”程序负责: • 对系统中的各种输入输出设备进行管理 • 处理用户(或应用程序)的输入/输出请求,方便、有效、安全地完成输入/输出操作 • 参看本章阅读材料3.3
操作系统的几种类型 • PC机使用的操作系统一般都具有多任务处理功能 • 网络服务器上安装运行的是“网络操作系统”,特点是: • 具有强大的多用户并发处理能力 • 支持多种网络通信功能,提供丰富的网络应用服务 • 安全性强,可靠性好 • 军事指挥和武器控制系统、电网调度和工业控制系统、证券交易系统等, 安装运行的是“实时操作系统”,特点是: • 对外部事件能快速作出响应, • 具有很高的可靠性和安全性 • 嵌入式计算机应用中运行的是“嵌入式操作系统”,特点是: • 快速、高效、具有实时处理功能 • 代码非常紧凑,存储器需求小
Windows 9x共有3个产品,面向家用PC Windows的最新产品,有多种不同用途的版本 6 Windows Vista Windows XP既适合家庭用户也适合商业用户,目前有家庭版、专业版、媒体中心版、平板PC版和64位版本等多种,它有丰富的音频、视频和网络通信功能 WindowsNT和Win2000面向商用PC机,性能较高,安全性较好,提供服务器版本 微软Windows操作系统 • 特点: • 提供了多任务处理能力 • 在个人计算机上广泛使用 • 采用图形用户界面,简化计算机操作 • 版本的演变:
Windows NT 3.1 (1993) 32位操作系统 16位 Windows NT 4.0 (1996) 服务器版 工作站版 模拟32位 服务器版 高级服务器版 Windows 2000 (1999) 专业版 数据中心服务器版 Windows XP (2001) 专业版 家庭版 16/32位混合 标准版 WEB版 Windows 2003 (2003) 企业版 数据中心版 64位 Windows VISTA (2006) Windows 的发展史 Windows 1.0 (1985) Windows 2.0 (1987) Windows for Workgroups 3.1 (1992) Windows 3.0 (1990) Windows 3.2 简体中文版 (1994) Windows 95 (1995) Windows 98 (1998) Windows 98 se (1999) Windows Me (2000)
Windows Vista的版本 • 家庭/消费类用户版包含四种版本:◇Windows Vista Starter◇ Windows Vista Home Basic◇ Windows Vista Home Premium◇ Windows Vista Ultimate (旗舰版) • 企业用户版包含三种版本:◇Windows Vista Ultimate(旗舰版)◇ Windows Vista Business◇ Windows Vista Enterprise
UNIX和Linux操作系统 • 都属于主流操作系统,在巨型机、大型机上作为网络操作系统使用 • 两者的关系及演变如右图 • Linux经过裁剪后可应用于嵌入式系统
资料:LINUX的起源 • Linux是一种“类UNIX”的操作系统,它的原创者是芬兰的一名青年学者林纳斯•托瓦兹(Linus Torvalds),1991年时他是一个年仅21岁的大学生。起初他不准备买个人计算机,因为他不喜欢当时流行的操作系统MS-DOS。林纳斯•托瓦兹曾经学习过操作系统的知识,所以他决定自己尝试做一个操作系统。 • 林纳斯•托瓦兹的工作是基于UNIX 的一个教学版本Minix进行的,不久他便拼凑起了一个内核(操作系统最核心的部分)。当他在网上一个讨论组中提到他的计划时,有人在一所大学的服务器上给他提供了一块存储空间,以便他把编写好的程序上传上去,其他人则可从服务器上拷贝这个程序,进行试用和修改然后再传回给托瓦兹。这些工作的所有成果就成为后来众所周知的Linux。
LINUX是开源软件 • 在紧接着的两年里,Linux日臻完善,完全可以作为一个产品发布出去。但是托瓦兹并没有申请专利权并把Linux作为商品来出售。他在自由软件联盟申请了普通公共许可证(General Public License,GPL),使Linux成为一个完全自由的软件。根据GPL的规定,任何人可以对Linux进行修改、传播甚至出售,由于Linux的源代码始终是公开的,它成为了众所周知的开放源代码软件,也是开放源代码运动的先锋。 • 全世界有数以千计的程序员参与了开发Linux的工作。他们编写程序、修改错误并对程序进行改进,开发了适应各种不同需求的版本,使Linux逐渐成为一个功能强大、用途广泛的产品。
资料:LINUX kernel的版本变化 • 1991年,Linus Torvalds 公开了 Linux 内核 • 1993年,Linux 转向 GPL 版权协议 • 1994年,Linux 1.0 的第一个商业发行版 Slackware 问世 • 1996年,美国国家标准技术局确认 Linux 版本 1.2.13(由 Open Linux 公司打包)符合 POSIX 标准 • 1999年,Linux 的简体中文版问世 • 2001年,Linux2.4版发布 • 2003年,Linux2.6版发布 • 目前的最新版本是:2.6.26(July 13, 2008发布)