中国科学技术大学计算机系 陈香兰 xlanchen@ustc.edu.cn Fall 2013 第一讲 绪论 中国科学技术大学计算机系 陈香兰 xlanchen@ustc.edu.cn Fall 2013.

Slides:



Advertisements
Similar presentations
高校教师、高级项目经理 任铄 QQ : 第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 OS 结构设计.
Advertisements

Edu.51cto.com 高校教师、高级项目经理 任铄 QQ : edu.51cto.com 第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 OS 结构设计.
1 I/O 设备访问方式和类型. 2 Overview n The two main jobs of a computer: l I/O (Input/Output) l processing n The control of devices connneted to the computer is.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
College of Computer Science
Chapter 3: Operating-System Structures操作系统结构
Foundations of Computer Science
第四章 電腦軟體 課前指引 實體的電腦裝置,我們稱之為「硬體」(Hardware),至於軟體則是個抽象的概念,軟體是經由人類以各種不同的程式語言撰寫而成,以達到控制硬體、進行各種工作的抽象化(例如文書處理)等動作。有些讀者經常迫不及買了一台新電腦,就以為可以開始使用!事實不然,一部配備齊全的電腦,如果沒有合適的軟體來控制與搭配,絕對也是英雄無用武之地。一般來說,我們將軟體分「系統軟體」(System.
4.5 实时调度算法 实时调度是为了完成实时处理任务而分配计算机处理器的调度方法。实时处理任务要求计算机在用户允许的时限范围内给出计算机的响应信号。 实时处理任务可分为 硬实时任务(hard real-time task) 软实时任务(soft real-time task)。 其中,前者要求计算机系统必须在用户给定的时限内完成,后者允许计算机系统在用户给定的时限左右处理完毕。
IT原理与应用(1)-电脑系统 IT Principles and Applications (1) - Computer System
前言 1.课程安排: 第一章 操作系统引论(7学时) 第二章 进程管理(14学时) 第三章 处理机调度与死锁(10学时)
操作系统结构.
实用操作系统概念 张惠娟 副教授 1.
CHAP 2 Computer-System Structures 计算机系统结构
Chapter 2: Computer-System Structures计算机系统结构
B500 主控制程序 B5000 Master Control Program
第10章 多处理器和实时调度 主要内容: 多处理器调度 实时调度 操作系统调度例 分类与粒度 设计问题 进程调度 实时进程的要求与特点
天文望远镜集成建模研究 杨德华 南京天文光学技术研究所 30 NOV, 年中国虚拟天文台年会 广西师范大学 桂林
Operating System CPU Scheduing - 2 Monday, August 11, 2008.
Operating System CPU Scheduing - 3 Monday, August 11, 2008.
YARN & MapReduce 2.0 Boyu Diao
雲端運算虛擬主機技術的發展.
Operating System Concepts 作業系統原理 Chapter 3 行程觀念 (Process Concept)
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
现场总线Fieldbus.
计算机应用基础 第二章 操作系统基础 2018/11/16.
操作系统课程的特点: 实践性强(从实践总结出原理)
Applied Operating System Concepts
第4章 作業系統的介紹及操作.
第8章作業系統.
不断变迁的闪存行业形势 Memory has changed, especially serial - from a low cost, low pin count, slow memory to an advanced, high performance memory solution to save.
作 業 系 統 第三組 楊育翰 顏瑞霖.
GPU分散式演算法設計與單機系統模擬(第二季)
嵌入式系统课程简介 宋健建 南京大学软件学院 2004/02/10.
Operating System Concepts 作業系統原理 CHAPTER 2 系統結構 (System Structures)
HLA - Time Management 陳昱豪.
Chapter 3 行程觀念 (Process Concept)
ICT RTOS Research Group 胡伟平,王剑
An Introduction to Computer Science (計算機概論)
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
Chapter 4 多執行緒 (Multi Thread)
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
作業系統 (Operating System)
第2章 作業系統面面觀.
Operating System Principles 作業系統原理
中国科学技术大学计算机系 陈香兰(0551- ) Spring 2009
第3章 認識處理元.
Unit 11.Operating System 11.1 What’s OS 11.2 Related Courses
TinyOS 石万兵 2019/4/6 mice.
SAP R/3架構及前端軟體安裝 Logical View of the R/3 System SAP Frontend 6.2安裝
資料庫 靜宜大學資管系 楊子青.
作業系統 第三章 作業系統結構.
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
Real-Time System Software Group Lab 408 Wireless Networking and Embedded Systems Laboratory Virtualization, Parallelization, Service 實驗室主要是以系統軟體設計為主,
Operation System(OS).
操作系统课件 教材: 《操作系统概念(第六版 影印版)》
微机系统的组成.
RTOS.
Introduction to Operating Systems 作業系統 (上)
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
虚 拟 仪 器 virtual instrument
中国科学技术大学计算机系 陈香兰 Fall 2013 第三讲 线程 中国科学技术大学计算机系 陈香兰 Fall 2013.
靜宜大學專用 PowerPoint 檔案 數位教材
導 論 教學投影片.
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
Operating System Software School of SCU
SAP 架構及前端軟體安裝 Logical View of the SAP System SAP Frontend 7.1安裝 SAP登入
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
Presentation transcript:

中国科学技术大学计算机系 陈香兰 xlanchen@ustc.edu.cn Fall 2013 第一讲 绪论 中国科学技术大学计算机系 陈香兰 xlanchen@ustc.edu.cn Fall 2013

内容提要 操作系统的定义、设计目标、作用和层次模型 操作系统的发展动力和发展过程 操作系统的特征、主要功能和服务 操作系统的抽象模型和体系结构

内容提要 操作系统的定义、设计目标、作用和层次模型 操作系统的发展动力和发展过程 操作系统的特征、主要功能和服务 操作系统的抽象模型和体系结构

计算机系统的组成 计算机系统由硬件和软件两部分组成。 操作系统是硬件之上的第一层软件,可以看成是对计算机硬件系统的第一次扩充。 所有运行在操作系统上层的应用软件都会或多或少、或直接或间接地调用操作系统提供的功能,

操作系统的定义 操作系统是一组控制和管理计算机软硬件资源、合理地对各类作业进行调度以及方便用户的程序的集合。 An Operating System is a program that managers the computer hardware provides a basis for application programs acts as an intermediary between the computer user and the computer hardware

操作系统的设计目标 在计算机硬件上配置的OS的(设计)目标有以下几点: 方便性 有效性 可扩充性 开放性

操作系统的作用 对操作系统作用的理解,有不同的观点: 用户与计算机硬件系统之间的接口(图) 计算机资源的管理者(图) 扩充机器(或虚拟机) 命令接口、图形用户接口 编程接口(系统调用接口) 计算机资源的管理者(图) 四类资源:处理机、存储器、I/O设备、文件 扩充机器(或虚拟机) 虚拟机:覆盖了软件的机器 层次性

作为用户与计算机硬件系统之间的接口 用户 程序员 系统设计者 应用程序及实用程序 系统调用,命令,图标,窗口 操作系统 计算机硬件

作为计算机资源的管理者

操作系统的层次模型 什么是层次模型? 一种经典的操作系统的结构模型 Reading:汤子瀛,二版,1.1.3 最高层:接口 中间层:对对象进行操纵和管理的软件集合 最底层:OS操纵和管理的对象,包括各类软硬件资源 Reading:汤子瀛,二版,1.1.3

举例:类UNIX操作系统的经典体系结构图 User interface System programs API Kernel: a large number of functions for one level

举例:Windows操作系统的经典体系结构图

内容提要 操作系统的定义、设计目标、作用和层次模型 操作系统的发展动力和发展过程 操作系统的特征、主要功能和服务 操作系统的抽象模型和体系结构

操作系统的发展动力 操作系统形成至今将近60年。 推动操作系统发展的主要动力有4个方面 历程: 出现了上百种操作系统 大型机、小型机、微机、嵌入式、实时、分布等等 推动操作系统发展的主要动力有4个方面 不断提高计算机资源利用率的需要 方便用户 器件的不断更新换代 计算机体系结构的不断发展 历程: 无OS时代批处理系统分时系统实时系统  PC 分布式和并行系统 嵌入移动系统 …

操作系统的种类 FMS(FORTRAN Monitor System,FORTRAN监控系统) OS/360(IBM为系列机360配备的操作系统) CTSS(Compatible Time Sharing System) MULTICS(MULTiplexed Information and Computer Service) UNIX类、Linux CP/M Windows、Macintosh Mach VxWorks、嵌入式Linux系列、uC/OS-II、RTEMS ……

操作系统的发展过程 无操作系统时期 单道批处理系统 多道批处理系统 分时系统 实时系统 其他操作系统 Reading 分布式、并行、安全 计算机操作系统,汤子瀛,1.2节

History of the OS(1945~1955,无操作系统) Tube-based(电子管) ENIAC 17,468 vacuum tubes 5,000 additions/sec, 1800 square feet, 30 tons Program are hardwired on plug boards One program at a time, Need professional operator User VS. operator Only useful to Numerical calculations No OS at all ! Manual system (人工操作)

History of the OS(1955~1965,批处理系统) Transistor based(晶体管) Jobs on cards or tapes Job(作业) Control cards Language: ASM High level language FORTRAN, ALGOL, COBOL Applications Scientific APPs & Engineering APPs Batch system

批处理系统的工作方式 用户将作业交给系统操作员 系统操作员将许多用户的作业组成一批作业,输入到计算机系统中,在系统中形成一个自动转接的连续的作业流 作业是成批的 启动操作系统 系统自动、依次执行每个作业 由操作员将作业结果交给用户

批作业处理:对批作业中的每个作业进行相同的处理 批处理系统中的作业的组成: 用户程序 数据 作业说明书(作业控制语言) 批的含义: 供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件 批作业处理:对批作业中的每个作业进行相同的处理 从磁带读入用户作业和编译链接程序,编译链接用户作业,生成可执行程序;启动执行;执行结果输出

批处理系统 经历了两个阶段 Simple batch systems,单道批处理系统 Multiprogramming systems,多道批处理系统

单道批处理系统 输入设备: 输出设备: Operator BATCH similar jobs to speed up processing Card readers, tape drives 输出设备: Line printers, card punches and tape drives Operator BATCH similar jobs to speed up processing User VS. operator Compare to : Manual system Monitor(OS), load program and execute Always resident in memory FIFO: Transfer control automatically from one job to the next Only One Job in Memory at a time

单道批处理系统的工作过程 处理过程(图) 特征 监督程序(monitor) 系统对作业的处理都是成批进行的、且内存中始终只保持一道作业。 批处理系统的引入是为了提高系统资源的利用率和吞吐量 特征 自动性、顺序性、单道性

单道批处理系统的处理流程 把下一个作业 的源程序转换 为目标程序 还有下一 个作业? 开始 是 否 源程序 有错吗? 停止 是 否 运行目标程序 装配目标程序

单道程序运行情况 用户程序 监督程序 I/O操作 I/O中断请求 I/O中断请求 启动I/O I/O完成 启动I/O I/O完成 结束中断 t1 t2 t3 t4 t5 t6 t7 t8

单道批处理系统分析 Analysis 引入的新技术 Off-line I/O:脱机I/O Serial Card reader: Jobs execute one by one Mechanical I/O device: poor speed CPU: thousands of intructions/sec VS. Card reader: 20 cards/sec CPU is often idle  CPU utilization is LOW 引入的新技术 Off-line I/O:脱机I/O a cheaper system reads from cards into tapes 磁盘 Allowed OS to keep all jobs on a disk With direct access to several jobs Could do Job scheduling to use resources and perform task efficiently Multiprogramming(多道程序) CPU utilization(利用率)↑

脱机I/O和SPOOLing技术 脱机I/O 脱机的内涵:程序和数据都是在脱离主机控制下,由外围机控制完成的。 目的:解决人机矛盾和CPU与I/O设备之间速度不匹配的矛盾 时间:50年代末 方法:利用低速的外围机进行纸带(卡片)磁带(磁盘) 脱机的内涵:程序和数据都是在脱离主机控制下,由外围机控制完成的。

脱机I/O示意图 磁盘 输入设备 外围机 磁盘 磁盘 主机 磁盘 外围机 输出设备

SPOOLing技术 1961年,英国曼彻斯特大学,Atalas机 Simultaneous Peripheral Operation On-Line (同时的外围设备联机操作——假脱机技术) 基本思想: 利用磁盘作缓冲,将输入、计算、输出分别组织成独立的任务流,使I/O和计算真正并行

SPOOLing系统工作原理 作业进入到磁盘上的输入井 按某种调度策略选择几种搭配得当的作业,并调入内存 作业运行的结果输出到磁盘上的输出井 结果从磁盘上的输出井送到打印机 使用进程代替外围机

SPOOLing系统的组成示意图 预输入程序 输入井 井管理 程序 缓输出程序 输出井 输入设备 作业调度程序 运行作业 输出设备 磁盘 作业1信息 … 作业n信息 输入井 作业1结果 作业n结果 输出井 缓输出程序 井管理 程序 运行作业 输入设备 输出设备 作业调度程序

多道批处理系统 多道:系统中同时驻留多个作业 多道引入的优点: 特征 共享内存 复用CPU:当一个作业因某个原因暂停运行时,切换到另一个作业上运行 多道引入的优点: 提高CPU利用率 提高内存和I/O设备利用率 提高了系统吞吐量 特征 多道性、无序性、调度性:作业调度、进程调度

多道程序运行情况(四道时) 程序A 程序B 程序C 程序D 调度程序 表示获得CPU I/O请求 I/O完成 A完成 I/O请求 I/O完成

多道程序对操作系统的功能需求 Job Scheduling Memory management CPU scheduling How many & which jobs entered memory Memory management where & how much memory: the system must allocate the memory to several jobs. Memory protection for each job CPU scheduling Which job in memory( job pool) would get the CPU Job and CPU scheduling makes up 2-phrase of scheduling I/O routine supplied by the system. Allocation of devices.

多道批处理系统分析 When the job have to wait for some task, such as an I/O op. to complete Single Batch System: CPU  idle Multiprogramming system: CPU  switch to another job and execute( CPU is never idle) Advantages Higher CPU, I/O, Memory Utilization Higher system throughput Disadvantages No User interaction with computer Job time too long( why?) Simple batch system VS. Multiprogramming system 缺点:用户交互性差,调试程序困难 (无交互手段:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改) 作业平均周转时间长 短作业的周转时间显著增长

History of the OS(1965~1980,引入分时) IC circuits(集成电路) LSI,VLSI UNIX More Applications OS Multiprogramming batch systems↑ Time-sharing systems(分时系统)

Time-sharing system 分时系统 需求:User need interaction with computer Response time < 1 sec 解决方法: Share CPU by time pieces(时间片) Time-sharing( multitasking) Users share Main frame One main frame VS. Multi users & Multi terminal Time-sharing system is a logical extension of multiprogramming. 经典操作系统:MULTICS、UNIX

经典案例:UNIX 一群计算机迷 在贝尔实验室开发出UNIX 初衷:可以在一台无人使用的DEC PDP-7 小型计算机上玩星际探险游戏 Ken Thompson,Dennis Ritchie 1983年图灵奖获得者 1999年4月 美国国家技术金奖

分时系统下的工作方式 一台主机连接了若干个终端, 每个终端有一个用户在使用 交互式的向系统提出命令请求 系统接受每个用户的命令 采用时间片轮转方式处理服务请求 通过交互方式在终端上向用户显示结果 用户根据上步结果发出下道命令

分时系统的关键技术 Receive input in time(及时接收) Process in time(及时处理) 解决思路: Mutual job(交互作业) always in memory Time pieces 分时系统的特征 多路性、独立性、及时性、交互性

分时系统的设计目标 分时操作系统所追求的设计目标: 响应时间: 影响响应时间的因素: 及时响应,其依据是响应时间 从终端发出命令到系统给予回答所经历的时间 影响响应时间的因素: 机器处理能力 请求服务的时间长短 系统中连接的终端数目 服务请求的分布 调度算法(时间片的选取)

分时系统的实现 单道与分时的结合: 分时与批处理相结合: 分时与多道相结合 单道分时 原则:分时优先,批处理在后 具有前后台的分时: “前台”:需频繁交互的作业 “后台”:时间性要求不强的作业 分时与多道相结合 多道分时

History of the OS(1980~now,百花齐放) Development of Computer architecture (图) 32bits64bits Workstations and PCs Parallel processors Computer networks Cluster Special purpose computer system Types Parallel systems Real-time systems Embedded systems Distributed systems

Migration of OS Concepts and Features

实时系统 通常在一些专门的应用中,用来控制设备 这种系统往往具有及时响应的时间限制 严格 vs. 不严格 定义: 实时系统是指使计算机能及时响应外部事件的请求,在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作的操作系统 按领域分类: 第一类:实时过程控制 第二类:实时通信(信息)处理

实时任务的分类 按任务执行是否呈现周期性来划分 根据对截止时间的要求来划分 实时操作系统追求的设计目标: 周期性的,有规律; 非周期性的,无规律,但有截止时间 开始截止时间 vs. 完成截止时间 根据对截止时间的要求来划分 硬实时任务 vs. 软实时任务 实时操作系统追求的设计目标: 满足实时性要求: 对外部请求在严格时间范围内作出反应 高可靠性

实时系统的实现和应用 硬实时系统:Hard real-time system 软实时系统:Soft real-time system Secondary storage limited or absent, data stored in short-term memory, or read-only memory (ROM) Conflicts with time-sharing systems, not supported by general-purpose operating systems 软实时系统:Soft real-time system Limited utility in industrial control or robotics Useful in applications (multimedia, virtual reality) requiring advanced operating-system features 典型:VxWorks、QNX、RTEMS

实时系统与批处理系统和分时系统的区别 专用系统:许多实时系统是专用系统,而批处理与分时系统通常是通用系统 实时控制:实时系统用于控制实时过程,要求对外部事件的迅速响应,具有较强的中断处理机构 高可靠性:实时系统用于控制重要过程,要求高度可靠,具有较高冗余(如双机系统) 事件驱动和队列驱动:实时系统的工作方式:接受外部消息,分析消息,调用相应处理程序进行处理。

实时、分时的比较 多路性:相同 独立性:相同 及时性:实时系统要求更高 交互性:分时系统交互性更强 可靠性:实时系统要求更高

到目前为止,介绍了三种最基本的操作系统类型 批处理系统 分时系统 实时系统 一个实际的操作系统,往往兼有上述三种基本操作系统类型的功能 下面简单介绍其他类型的操作系统

Personal-Computer Systems,个人计算机系统 Personal computers(PCs) 计算机为单用户服务 I/O devices 键盘、鼠标、显示器、打印机 PC系统所追求的设计目标是: 界面友好,使用方便(User convenience & responsiveness),有丰富的应用软件 不必过于追求CPU利用率

常见的PC system用的操作系统 OS MS-DOS OS/2 Microsoft windows … Apple Macintosh NT, 95, 98, 2000, xp, windows me, windows vista Apple Macintosh Linux …

并行系统 Parallel Systems Multiprocessor systems with more than one CPU in close communication Tightly coupled system 紧耦合系统 processors share memory and a clock; communication usually takes place through the shared memory 优点: Increased throughput Economical Increased reliability graceful degradation fail-soft systems

并行系统(Cont.) Symmetric multiprocessing (SMP,对称多处理器) Each processor runs an identical copy of the operating system. Many processes can run at once without performance deterioration. 现在的大多数通用操作系统都支持SMP,例如Linux、UNIX、Windows

Asymmetric multiprocessing 非对称多处理 Each processor is assigned a specific task; master processor schedules and allocates work to slave processors. More common in extremely large systems

Distributed Systems 分布式系统 分布式系统:处理和控制的分散 Loosely coupled system 松耦合系统 each processor has its own local memory; processors communicate with one another through various communications lines, such as high-speed buses or telephone lines Advantages of distributed systems Resources Sharing 资源共享 Computation speed up – load sharing 负载平衡 Reliability 可靠 Communications 通信

分布式系统上的操作系统 Network Operating System 网络操作系统 provides file sharing provides communication scheme runs independently from other computers on the network Distributed Operating System 分布式操作系统 less autonomy between computers gives the impression there is a single operating system controlling the network 单一映像

Embedded System 嵌入式系统是在各种设备、装置或系统中,完成特定功能的软硬件系统 它们是一个大设备、装置或系统中的一部分, 这个大设备、装置或系统可以不是“计算机” 通常工作在反应式或对处理时间有较严格要求环境中 由于它们被嵌入在各种设备、装置或系统中,因此称为嵌入式系统 嵌入式系统具有最广泛的应用

经典:VxWorks、嵌入式Linux系列、RTEMS、WindowsCE、PalmOS 嵌入式操作系统与通用操作系统有很大不同 Small size、Low power Special environment, special function 开发方式也不同 交叉开发 Host, simulator VS. target 经典:VxWorks、嵌入式Linux系列、RTEMS、WindowsCE、PalmOS

作业: 阅读至少2本操作系统相关书籍,给出这些书中关于操作系统的定义,要列出出处。 阅读至少2本操作系统相关书籍,阐明操作系统的公共设计目标和某些操作系统特有的设计目标,要列出出处。 阅读至少2本操作系统相关书籍,阐明操作系统的作用,要列出出处。 操作系统的基本类型是哪三种?他们的关键技术有哪些?

上机实践一 安装虚拟机 在虚拟机上安装Linux操作系统,版本自选 在虚拟机上安装Windows操作系统,版本自选