1 操作系统导论

目录

1.1 操作系统做什么

计算机系统架构

计算机系统可分为四个组成部分

一个计算机系统的四个组成部分

什么是操作系统

1.2 计算机系统组成

总线结构

主机型

1.2.1计算机系统操作

计算机启动

中断的常见功能

中断(重点)

中断处理(Interrupt Handling)

中断时间轴

1.2.2 存储结构(storage structure)

存储层次结构

高速缓存(Cashing)

存储设备层次结构

1.2.3 I/O结构

I/O中断

两种I/O方式

现代计算机是如何工作的

设备状态表

1.3 计算机系统架构

单处理器系统(Single-Processor Systems)

多处理器(Multiprocessor Systems)

对称的多重处理架构

双核设计

计算机系统组件的定义

非同一内存访问(NUMA)

集群系统(Clustered Systems)

集群系统

1.4 操作系统的执行(Operating-System Operations

特权指令(重点)

内核态与用户态

i386支持Ring0-Ring3

定时器(Timer)

1.5 资源管理(resource management)

操作系统功能部件

进程管理(Process Management)

进程管理活动

内存管理(Memory management)

文件系统管理(File-system Management)

大规模存储管理(Mass-Storage-Management)

缓存(Caching)

各种存储类型的特点

将数据“A”从磁盘迁移到寄存器

I/O子系统

1.6 安全和保护(Security And Protection)

1.7 虚拟化(Virtualization)

计算环境

1.8 分布式系统(Distributed Systems)

1.9 内核数据结构

链表

二叉树

Hash Map

1.10 计算环境(Computing Environment)

一、传统计算(Trational)

1 大型机系统(Mainframe Systems)

2 分时系统(Time-Sharing System)

3 桌面系统(Desktop System)

二、移动计算

计算机应用领域

三、客户机-服务器计算(Client-Server)

四、点对点计算(Peer-Peer)

五、虚拟化计算

六、云计算

多种类型

服务方式

由传统操作系统、vmm和云管理工具组成的云计算环境

七、实时嵌入式系统(Real-Time Embedded Systems)

嵌入式系统

操作系统市场格局

国内操作系统发展情况

操作系统长期由国外厂商垄断

Windows为什么成功

1.11 自由和开源操作系统

开源操作系统(Open-Source Operating Systems)

1.12 总结


 操作系统的名称:

 监控(督)程序(系统)(Monitor)

 执行系统(程序)(Executive System(program))

 控制系统(程序)(Control System program))

 管理程序(Supervisor, Supervisory System)

 内核(Kernel)

 操作系统(Operating System)

1.1 操作系统做什么

作为计算机用户和计算机硬件之间的中介的程序。

操作系统的目标:

执行用户程序,使解决用户问题更容易。

使计算机系统方便使用。

能够有效地使用计算机硬件。

计算机系统架构

计算机系统可分为四个组成部分

硬件-提供基本的计算资源:CPU,memory,I/O设备

操作系统:控制和协调各种应用程序和用户之间的硬件使用

系统和应用程序-定义使用系统资源来解决用户的计算问题的方法:Word处理器,编译器,网页浏览器,数据库系统,视频游戏

用户:人,机器,其他电脑

一个计算机系统的四个组成部分

什么是操作系统

1、计算机系统组成观点——操作系统是系统软件

计算机系统组成:

软件:

应用软件

中间件(Middleware)

系统软件:操作系统、...

硬件:

输入/输出(I/O)设备

存储器(内存)

中央处理器(CPU)

2、User View :操作系统是用户与计算机硬件之间接口

 Computer计算机硬件
 个人计算机
 大型机(服务器)或迷你计算机
 移动计算机
 操作系统提供的接口有:
 命令级接口
 键盘或鼠标等命令。

 移动设备的用户界面,如触摸屏,语音识别

 程序级接口,它提供一组系统调用System calls ,即操作系统服务,供用户程序和其它程序调用。

3.System View:操作系统是计算机系统资源的管理者

操作系统是一个资源分配器

管理所有的资源

为了高效和公平的资源使用,在冲突请求之间做决定

操作系统是一个控制程序

控制程序的执行,以防止错误和计算机使用不当

 4. 从软件分层、扩充机器的观点:操作系统是扩充裸机的第一层系统软件

5、操作系统的定义:没有普遍接受的定义

”当你订购操作系统时供应商提供的一切“是很好的近似

但差别很大

其他一切都是系统程序(系统程序,操作系统附带)或应用程序,移动计算也包括中间件

“在计算机上一直运行的一个程序”是内核

 操作系统是一组有效控制和管理计算机各种硬件和软件资源,合理的组织计算机的工作流程 ,以及方便用户的程序的集合。 ——很多中文书的描述

 体现:

 有效(efficient):系统效率高,资源利用率高

(如:CPU使用率,内存、外部设备是否忙)

 合理:公平,如果不公平则会产生“死锁”或“饥饿”

 方便(convenience):用户界面,编程接口

1.2 计算机系统组成

总线结构

微型计算机是以总线为纽带来构成计算机系统,中央处理机(CPU)、存储器、 I/O设备(包括外存磁盘、磁带)都挂接在总线。

主机型

这类计算机以存储器为中心,CPU和各种通道都与存储器相连。

1.2.1计算机系统操作

■I/O设备和CPU可以并行运行(execute concurrently)。

■每个设备控制器负责一种特定的设备类型。

■每个设备控制器都有一个本地缓冲区。

■每种设备控制器类型都有一个操作系统的设备驱动程序(device driver)来管理它

■CPU将数据从主存移动到本地缓冲区或从本地缓冲区移动到主存

■I/O从设备移动到控制器的本地缓冲区。

■设备控制器通过引起中断(interrupt)(通过系统总线)通知CPU它已经完成了操作。

计算机启动

引导程序在通电或重新启动时加载

通常存储在只读存储器(ROM)或可擦写可编程只读存储器(EEPROM)中,通常称为固件(firmware)

初始化系统的所有方面

加载操作系统内核并开始执行

中断的常见功能

 中断(Interrupt):指系统发生某个异步/同步事件后,处理机暂停正在执行的程 序,转去执行处理该事件程序的过程.

通常通过中断向量(中断向量)将中断控制传输到中断服务例程,该中断向量包含所有服务例程的地址。

中断体系结构必须保存被中断指令的地址。

当正在处理另一个中断时,传入中断被禁用,以防止丢失的中断。

陷入(trap)是由错误或用户请求引起的软件生成的中断(software-generated interrupt)。

一个操作系统是由中断驱动的。

中断(重点)

 外部中断(interrupt),异步中断:

 外部设备(如鼠标,键盘)所发出的I/O请求

 分为可屏蔽的和不可屏蔽的两类,由一些硬件设备产生,可以在指令执行的任意时刻产生。

 异常(exception),内部中断,同步中断:

 由CPU(正在执行的进程)产生,一条指令终止执行后CPU才会发出中断。

 常见的异常有除零、溢出及页面异常(fault出错)等。另一种情况是使用

int指令(trap陷入),Linux使用该指令来实现系统调用。 fault与trap区别

中断处理(Interrupt Handling)

■操作系统通过存储寄存器和程序计数器来保持CPU的状态。

■确定发生了哪种类型的中断:

通过一个通用例程进行轮询(polling)

矢量化中断系统(vectored interrupt system)

■单独的代码段确定对每种类型的中断应该采取什么操作

中断时间轴

1.2.2 存储结构(storage structure)

主存(main memory)-只有CPU可以直接访问的大型存储介质。

辅存(secondary storage)-主存的扩展,提供较大的非易失性存储容量。硬盘驱动器(HDD,Hard Disk Drives)-覆盖着磁性记录材料的刚性金属或玻璃磁盘,

磁盘表面在逻辑上被划分为轨道,并被细分为扇区。

磁盘控制器确定设备和计算机之间的逻辑交互。

非易失性存储器(NVM,Non-volatile memory)设备-比硬盘快,非易失性

各种技术

随着容量和性能的提高,价格的下降,变得更加流行

存储层次结构

按分层组织的存储系统。

速度

成本

易失性

缓存(Cashing)(高速缓存)-将信息复制到更快的存储系统中;主存可以视为辅助存储的最后一个缓存。

持久内存(consistent memory):可以作为第二主存;非易失的;速度、容量、成本均在动态随机存取存储器(DRAM,Dynamic Random Access Memory)和固态硬盘(SSD,Solid State Disk)之间,12GB、256GB、512GB

高速缓存(Cashing)

重要原则,执行在许多级别在计算机(硬件、操作系统、软件)

信息使用从慢到快的存储暂时

加快存储(缓存)检查确定信息存在

如果是,信息直接从缓存(快速)

如果不是,数据复制到缓存和使用

缓存小于存储缓存

缓存管理重要设计问题

缓存大小和替换策略

存储设备层次结构

1.2.3 I/O结构

I/O方式

程序I/O(Programmed I/O)

中断I/O(Interrupt I/O):同步I/O和异步I/O

DMA方式

通道方式

同步I/O(Synchronous I/O):在I/O启动后,控制仅在I/O完成时才返回到用户程序。

等待I/O完成,两种方法:

等待指令空闲的CPU,直到下一个中断

等待循环(循环: jmp循环)

一次最多未完成一个I/O请求,不同时进行一个I/O处理。

I/O中断

异步I/O(Asynchronous I/O):在I/O启动后,控件返回到用户程序,而不等待I/O完成。

System call系统调用-请求到操作系统,允许用户等待I/O完成。

设备状态表(Device-status table)包含每个I/O设备的条目,指示其类型、地址和状态。

操作系统索引到I/O设备表中,以确定设备状态,并修改表条目,以包括中断。

两种I/O方式

现代计算机是如何工作的

设备状态表

直接内存访问(DMA,Direct Memory Access Structure)

用于能够以接近内存速度传输信息的高速I/O设备。

设备控制器将数据块从缓冲区存储直接传输到主存,而不需要CPU干预。

每个块只在中断时生成,而不是每个字节生成一个中断。

1.3 计算机系统架构

单处理器系统(Single-Processor Systems)

许多年前,大多数计算机系统使用一个处理器,其中包含一个CPU和一个处理器核心。

大多数系统使用单一的通用处理器(single general-purpose processor)

多处理器(Multiprocessor Systems)

多处理器系统的使用情况和重要性都在不断增长

也被称为并行系统,紧密耦合系统

优点包括:

1、提高了吞吐量

2、规模经济

3、提高可靠性——优雅的退化或容错能力

两种类型:

1、不对称的多重处理

2、对称多重处理

对称的多重处理架构

双核设计

多个芯片(Muti-chip)和多核(multicore)

包含所有芯片的系统

包含多个独立系统的机箱

计算机系统组件的定义

CPU——执行指令的硬件

处理器——包含一个或多个cpu的物理芯片。

内核——CPU的基本计算单元。

多核技术——包括在同一个CPU上的多个计算内核。

多处理器——包括多个处理器。

一个CPU可能有多个核。

虽然现在几乎所有的系统都是多核的,但是当提到计算机系统和内核的单个计算单元时,我们使用通用术语CPU,当特别提到CPU上的一个或多个核时,我们使用多核。

非同一内存访问(NUMA)

non-uniform memory access

集群系统(Clustered Systems)

集群系统(Cluster) :是由一组互联的主机(节点)构成统一的计算机资源,

通过相应软件协调工作的计算机机群,给人以一台机器的感觉。

通常通过存储区域网络(SAN,storage-area network)共享存储

提供可克服故障故障的高可用性服务

非对称集群(Asymmetric clustering)有一台机器处于热备模式

对称集群(Symmetric clustering)有多个节点运行应用程序,相互监控

集群系统

有些集群是用于高性能计算的(HPC,high-performance computing)

必须编写应用程序才能使用并行化

有些还带有分布式锁管理器(DLM,distriburted lock manager),以避免相互冲突的操作

其他形式的集群:解析集群,通过广域网(WAN)进行的集群。

集群技术正在迅速发生变化。

一些集群产品支持一个集群中的数千个系统,以及以英里分隔的集群节点。

存储区域网(Storage-Area Network)

1.4 操作系统的执行(Operating-System Operations

硬件驱动的中断

软件错误或请求会创建异常(exception)或陷入(trap)

除以零,对操作系统服务的请求

其他进程问题包括无限循环、进程相互修改或进程修改操作系统

特权指令(重点)

特权指令只能在监控(内核)模式下发出。

 特权指令:不允许用户程序中直接使用的指令。例如:I/O指令、设置时钟、

置控制寄存器等指令都是特权指令。

 非特权指令:用户程序中所使用的指令。

双模式操作允许操作系统保护自身和其他系统组件

用户模式(用户态,User mode)和内核模式(kernel mode)(也包括监视模式或系统模式或监督模式或特权模式)(内核模式、内核态)

重要概念:状态指CPU的状态,不是内存的状态

用户态:执行用户程序时

内核态(管态、核心态、系统态、特权模式):执行操作系统程序时

内核态与用户态

内核态与用户态之间的区别

 内核态

 能够访问所有系统资源,可以执行特权指令,可以直接操作和管理硬件设备。

 操作系统内核程序运行在内核态下

 使用内核栈

 用户态

 只能访问属于它的存储空间和普通寄存器,只能执行普通指令。

 用户程序以及操作系统核外服务程序运行在用户态下

 使用用户栈

i386支持Ring0-Ring3

RISC-V的架构:用户模式(User Mode)和监督模式(Supervisor Mode)、超级监督模式(Hypervisor-mode)、机器模式(Machine Mode)

定时器(Timer)

定时器被设置为在一段时间后中断计算机

定时器用来防止无限循环/进程占用资源

在特定时段后设置中断

操作系统递减计数器

当计数器为零时,就会产生一个中断

在调度进程之前进行设置,以重新获得控制或终止超过分配时间的程序

1.5 资源管理(resource management)

操作系统功能部件

 进程管理 Process Management

 主存管理 Main Memory Management

 文件系统管理 File-System Management

 大容量储存管理 Mass-Storage Management

 高速缓存管理 Cache Management

 I/O系统管理 I/O System Management

进程管理(Process Management)

一个进程是一个正在执行中的程序。它是系统内的一个工作单位。程序是一个被动实体,进程是一个主动实体。

进程需要资源来完成其任务

CPU、内存、I/O、文件

初始化数据

进程终止需要回收任何可重用的资源

单线程进程有一个程序计数器,用来指定下一个要执行的指令的位置

进程依次执行指令,一次一个,直到完成

多线程进程,每个线程有一个程序计数器

通常系统有许多进程,一些用户,一些操作系统并发地运行在一个或多个cpu上

通过在进程/线程之间多路复用cpu来实现并发性

进程管理活动

该操作系统负责以下与进程管理有关的活动:

同时创建和删除用户进程和系统进程

暂停和恢复进程

提供实现进程同步的机制

提供进程交互的机制

提供可进行死锁处理的机制

内存管理(Memory management)

要执行程序,所有(或部分)指令必须在内存中

程序所需的所有(或部分)数据必须在内存中

内存管理决定了内存中是什么和什么时候在内存中

优化CPU利用率和计算机对用户的响应

内存管理活动

跟踪当前正在使用内存的哪些部分以及正在被谁使用

决定哪些进程(或其部分)和数据进出内存

根据需要分配和释放内存空间

文件系统管理(File-system Management)

操作系统提供统一的信息存储逻辑视图

将物理属性抽象到逻辑存储单元-文件

每个介质都由设备(如磁盘驱动器、磁带机)控制

不同的属性包括访问速度、容量、数据传输速率、访问方法(顺序或随机)

文件系统管理

通常被组织到目录中的文件

访问大多数系统上的控制,以确定谁可以访问什么

操作系统活动包括

创建和删除文件和目录

用于操作文件和目录的基语

将文件映射到辅助存储器上

将文件备份到稳定的(非易失性)存储介质上

大规模存储管理(Mass-Storage-Management)

通常磁盘用于存储不适合主存的数据或必须保存“长时间”的数据

正确的管理工作至关重要

计算机操作的整个速度取决于磁盘子系统及其算法

操作系统活动

安装和卸载

自由空间管理

存储分配

磁盘调度

分割

保护

有些存储空间不需要速度较快

三级存储包括光盘存储、磁带

仍然必须由操作系统或应用程序进行管理

缓存(Caching)

重要原则,在计算机(硬件、操作系统、软件)中执行

使用中的信息暂时从慢存储复制到快存储

快存储(缓存)首先被检查以确定是否存在信息

如果是,则直接使用缓存中的信息(快速)

如果没有,数据复制到缓存并在那里使用

缓存比正在缓存的存储空间小

缓存管理的重要设计问题

高速缓存大小和替换策略

各种存储类型的特点

存储层次结构级别之间的移动

可以是显式的或隐式的

将数据“A”从磁盘迁移到寄存器

多任务环境必须小心使用最新值,无论它存储在存储层次结构的位置

多处理器环境必须在硬件中提供缓存一致性(cache coherency),以便所有cpu在缓存中具有最新的值

分布式环境的情况甚至更加复杂

可以存在几个数据副本

第19章中涵盖的各种解决方案

I/O子系统

操作系统的一个目的是向用户隐藏硬件设备的特性

I/O子系统负责

I/O的内存管理,包括缓冲(在传输时临时存储数据)、缓存(将部分数据存储在快速存储中以提高性能)、假脱机(一个任务的输出与其他任务输入的重叠)

通用设备驱动接口

针对特定硬件设备的驱动程序

1.6 安全和保护(Security And Protection)

保护-由操作系统定义的控制进程或用户访问资源的任何机制

安全-防御系统的内部和外部攻击

涉及范围很广,包括拒绝服务,蠕虫,病毒,身份盗窃,服务盗窃

系统通常首先区分用户,以确定谁可以做什么

用户标识(user IDs、security IDs)包括名称和关联的号码,每个用户一个

用户ID与所有文件关联,该用户的进程确定访问控制

组标识符(组ID)允许定义和管理一组用户,然后还与每个进程、文件相关联

特权提升允许用户以更多的权限更改到有效的ID

1.7 虚拟化(Virtualization)

允许操作系统在其他操作系统中运行应用程序

庞大而不断增长的产业

当源CPU类型与目标类型不同时使用的仿真(比如PowerPC到Intel x86)

一般最慢的方法

当计算机语言没有被编译成本地代码时-解释

虚拟化-为CPU本地编译的操作系统,运行也是本地编译的客户操作系统

考虑VMware运行WinXP客户,每个运行的应用程序,都在本机WinXP主机操作系统上

虚拟机管理器(VMM,virtual machine Manager)提供虚拟化服务

使用案例涉及运行多个操作系统的笔记本电脑和台式机为了探索或兼容性

苹果笔记本电脑运行Mac OS X主机,Windows作为客户

在没有多个系统的情况下为多个操作系统开发应用程序

在没有多个系统的情况下对应用进行质量评价测试

在数据中心内执行和管理计算环境

VMM可以本机运行,在这种情况下,它们也是主机

那么就没有通用的主机了(VMware ESX and Citrix XenServer)

计算环境

1.8 分布式系统(Distributed Systems)

分布式计算

单独的、可能是异构的系统联网在一起的集合

网络是一种通信路径,TCP/IP最为常见

局域网(LAN,Local Area Network)

广域网(WAN,Wide Area Network)

城域网(MAN,Metropolian Area Network)

个人区域网络(PAN,Personal Area Network)

网络操作系统提供了跨网络的系统之间的特性

通信原理允许系统交换消息

对单一系统的错觉

1.9 内核数据结构

许多类似于标准的编程数据结构

链表

单链表

双链表

循环链表

二叉树

左边小于右边

搜索性能为O (n)

平衡二叉树为O(lg n)

Hash Map

哈希函数可以创建一个哈希图

位图-n个二进制数字的字符串,表示n个项目的状态

Linux 数据结构定义在include文件中<linux/list.h>, <linux/kfifo.h>, <linux/rbtree.h>

1.10 计算环境(Computing Environment)

 Traditional(传统计算)

 Mobile (移动计算)

 Client-Server(客户机-服务器计算)

 Peer-to-Peer(点对点计算)

 Virtualization(虚拟化计算)

 Cloud Computing(云计算)

 Real-Time Embedded Systems(实时嵌入式系统)

 国内操作系统现状

一、传统计算(Trational)

独立的通用机器

但由于大多数系统与其他系统的相互连接而变得模糊(如互联网)

门户网站提供对内部系统的网络访问

网络计算机(瘦客户机)就像Web终端一样

移动计算机通过无线网络互连

网络变得无处不在——甚至家庭系统也使用防火墙来保护家庭电脑免受互联网攻击

1 大型机系统(Mainframe Systems)

大型机(主机)的操作系统有:批处理系统、分时系统

Batch System批处理系统

 单道批处理系统 :一个程序直到运行结束

单道批处理系统的内存:

 多道批处理系统:多个程序同时运行

多道程序系统(Multiprogrammed Systems)

多道程序(Multiprogramming)

重要概念:

多个任务同时保存在主存中,CPU在它们之间进行多路复用。

2 分时系统(Time-Sharing System)

分时共享(Timesharing)(multitasking,多任务)是一种逻辑扩展,其中CPU频繁地切换任务,用户可以在每个任务运行时与之交互,从而创建交互式计算

 所谓分时是指多个用户分时共享使用同一台计算机,也就是说把计算机的系统资源(尤其是CPU时间)进行时间上分割,即将整个工作时间分成一个个的时间片,每个时间片分给一个用户(不是人,通常是进程)使用,这样将CPU工作时间分别提供给多个用户使用,每个用户依次地轮流且使用一个时间片。

single core

 1961年11月MIT实现了第一个分时系统CTSS

响应时间=T1+T2+T3+T4

时间片为T1

响应时间

 响应时间是分时系统的重要指标,它是用户发出终端命令到系统作出响应的时间间隔。系统的响应时间主要是根据用户所能接受的等待时间确定的。假

设分时系统中进程数(用户数)为n,每个进程的运行时间片为q,则系统的响

应时间为 S=n×q。

 UNIX、Linux、Windows

3 桌面系统(Desktop System)

个人电脑---------专门针对单个用户使用的计算机系统。

输入/输出设备-键盘、鼠标、显示屏、小型打印机

用户的便利性和响应性。

可以采用为大型操作系统开发的技术,通常个人只使用计算机,不需要保护功能的高级CPU利用率

可以运行几种不同类型的操作系统

Windows,Mac OS X,UNIX,Linux

PC 主要操作系统

 Windows系列:DOS, Windows 3.x, Window 95/98/2000/XP/7/8/10, Windows NT/2000/2003/2008/2013/2017 server;

 UNIX大家庭:BSD, Open Solaris, AIX, HP_UX , SVR4;Mac OS X,Linux。

二、移动计算

手持式智能手机、平板电脑等

它们和“传统”笔记本电脑在功能上有什么区别?

额外功能-更多的操作系统功能(GPS、陀螺仪)

允许使用增强现实技术等新型应用程序

使用IEEE 802.11无线,或蜂窝数据网络进行连接

智能手机、平板电脑操作系统

Android、iOS 、Windows phone、鸿蒙OS

计算机应用领域

三、客户机-服务器计算(Client-Server)

客户机-服务器计算

哑巴终端被智能个人电脑所取代

许多系统现在是服务器,响应客户端生成的请求

计算机-服务器系统为客户端提供了一个请求服务(如数据库)的接口

文件-服务器系统为客户端提供了存储和检索文件的接口

四、点对点计算(Peer-Peer)

分布式系统的另一个模型

P2P不区分客户端和服务器

相反,所有的节点都被认为是对等节点

可以每个节点都充当客户端、服务器或两者

节点必须加入P2P网络

使用网络上的中央查找服务注册其服务,或者

通过发现协议来广播服务请求并响应服务请求

例如Napster和Gnutella,IP语音(VoIP)(如Skype)

区块链技术(Blockchain technology)

五、虚拟化计算

允许操作系统在其他操作系统中运行应用程序

庞大而不断增长的产业

当源CPU类型与目标类型不同时使用的仿真(比如PowerPC到Intel x86)

一般最慢的方法

当计算机语言没有被编译成本地代码时-解释

虚拟化-为CPU本地编译的操作系统,运行也是本地编译的客户操作系统

考虑VMware运行WinXP客户,每个运行的应用程序,都在本机WinXP主机操作系统上

虚拟机管理器(VMM,virtual machine Manager)提供虚拟化服务

使用案例涉及运行多个操作系统的笔记本电脑和台式机为了探索或兼容性

苹果笔记本电脑运行Mac OS X主机,Windows作为客户

在没有多个系统的情况下为多个操作系统开发应用程序

在没有多个系统的情况下对应用进行质量评价测试

在数据中心内执行和管理计算环境

VMM可以本机运行,在这种情况下,它们也是主机

那么就没有通用的主机了(VMware ESX and Citrix XenServer)

六、云计算

跨网络提供计算、存储、甚至应用程序等服务

基于虚拟化的虚拟化逻辑扩展

Amazon EC2拥有数千台服务器,数百万台虚拟机,PB数量级的可用存储,根据使用情况付费

多种类型

公共云(Public cloud)-任何愿意付费的人都可以通过互联网使用

私有云(Private cloud)-由一家公司运营,供该公司自己使用

混合云(Hybrid cloud)—包括公共云组件和私有云组件

服务方式

软件即服务(SaaS、Software as a Service)——一个或一个可通过互联网提供的多个应用程序(如文字处理器)

平台即服务(PaaS,Platform as a Servie)——软件堆栈通过互联网供应用程序使用(如数据库服务器)

基础设施即服务(IaaS、Infrastructure as a Service)——通过互联网提供可用的服务器或存储器(如可用于备份使用的存储空间)

由传统操作系统、vmm和云管理工具组成的云计算环境

互联网连接需要像防火墙这样的安全性

负载平衡器将流量分散到多个应用程序中

七、实时嵌入式系统(Real-Time Embedded Systems)

实时嵌入式系统是最普遍的计算机形式

不同数量的,特殊用途的,有限用途的操作系统,实时操作系统

使用扩展

还有许多其他特殊的计算环境

有些有操作系统,有些没有操作系统就能执行任务

有些有操作系统,有些没有操作系统就能执行任务

处理必须在约束范围内完成

只有在满足约束条件时才会进行正确的操作

嵌入式系统

 嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统,

用于实现对其他设备的控制、监视或管理等功能

 嵌入式操作系统:运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度和控制的系统软件

 几种主流嵌入式操作系统

 嵌入式Linux :

 μCLinux

 RT-Linux

 XLinux

 红旗嵌入式Linux

 Montavista linux

 风河linux ......

 VxWorks

 QNX

 Windows CE

 uC/OS

 Palm OS

 L4

操作系统市场格局

 当前四大体系:

 服务器:Unix/Linux

 桌面:Windows、Mac OS X

 手机、平板电脑:iOS、Windows phone,Android,Harmony鸿蒙

 嵌入式系统:Linux系列

国内操作系统发展情况

 我国信息系统对Windows的依赖度是全世界最高的

 “核高基”重大专项

 16项国家科技重大专项的第一项

 核心电子器件、高端通用芯片、基础软件(二件一芯)

 本质:OS、CPU

 COSIX失败

 1989-1997:17家单位、200多位科技人员、4000多万元

 处于同期研制的Windows和Linux大获成功

 1990:windows 3.0, 1991:Linux kernel 0.11

操作系统长期由国外厂商垄断

 微软以及谷歌、苹果OS在国内具有绝对的垄断地位

 据工信部电信研究院的调研报告,国内自主操作系统装机普遍未超过市场份额的1%

 据2014年2月证券日报报道,有机构对我国130万套软硬件设备的统计数据显示,采用国外产品的比例为:操作系统97.25%、数据库95.06%、服务器

86.72%、数据处理设备83.38%、网络设备62.28%

 去IOE化(去掉IBM的小型机、Oracle数据库、EMC存储设备)已成为国内

互联网产业界( 如阿里、百度、腾讯等)的共识,并取得显著成效。而在操

作系统领域,去“WINTEL联盟”还未取得显著成效,又引来了“双A联盟(

Android+ARM)”

 操作系统产品缺乏有效供给,成为国产自主替代的重要制约因素

 2018年中兴通信事件有什么启发?

Windows为什么成功

 80年代后期至90年代初期PC操作系统

 Mac OS, IBM OS/2, Windows

 目前Windows市场份额逾80%

 成功原因

 使用方便,易于操作

 固定硬件平台,确保基本用户群

 针对IBM PC开放硬件平台和Intel CPU特点进行针对性设计和优化

 在市场利益驱动下形成了软硬件一体的产业链

 硬件及外设厂商基于微软接口开发设备驱动

 应用软件厂商基于微软接口开发应用系统

1.11 自由和开源操作系统

开源操作系统(Open-Source Operating Systems)

操作系统以源代码格式提供,而不仅仅是二进制封闭源代码

对抗复制保护和数字版权管理(DRM,Digital Rights Management)运动

由自由软件基金会(FSF,Free Software Foundation)发起,它拥有“版权的”GNU公共许可证(GPL,GNU Public License)

例如GNU/Linux和BSDUNIX(包括MacOSX的核心),等等

可以使用VMM,如VMware Player(在窗口上免费),Virtualbox(开源和在许多平台上免费- virtualbox.com is for sale | www.brandforce.com

用于运行客户操作系统以进行探索

1.12 总结

操作系统是执行两种功能的软件(程序):

它扩展了计算机硬件的“使用”

它管理计算机系统的资源

 batch system(批处理系统) 、time-sharing system (分时系统)、real-time system (实时系统)

 interrupt(中断)、trap(陷入)

 kernel(内核)、microkernel(微内核)、monolithic kernel(单内核)

 multiprogramming(多道程序设计)

 privileged instruction(特权指令)

 kernel mode(内核模式)、user mode(用户模式)

 symmetric multiprocessing(SMP 对称多处理器)

 swapping(交换)

 system call(系统调用)

 Cloud Computing (云计算)

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
操作系统导论》是一本关于操作系统基本概念和原理的教材。操作系统是计算机系统中最核心的软件之一,它管理和控制计算机硬件资源,并提供给用户和应用程序一个简单易用、高效稳定的接口。 《操作系统导论》主要内容包括操作系统的历史、发展背景,以及操作系统的基本概念、功能和特性等。通过对操作系统的研究,读者能够了解操作系统架构和组成,掌握操作系统的重要原理和算法,并能够利用这些知识进行操作系统的设计和开发。 在《操作系统导论》中,读者将深入学习操作系统的各个模块,比如进程管理、内存管理、文件系统等。通过对这些模块的学习,读者能够理解操作系统的核心功能,并能够掌握操作系统的基本工作原理。此外,书中还介绍了操作系统的各种经典算法和策略,如调度算法、页面置换算法等,这些算法是实现操作系统功能的基础。 除了基本概念和原理外,《操作系统导论》还涵盖了一些研究热点和前沿技术,如分布式系统、虚拟化技术和云计算等。通过深入了解这些新领域的内容,读者可以了解到操作系统在不同领域的应用和发展趋势。 总之,《操作系统导论》是一本系统介绍操作系统的教材,内容丰富、深入浅出,适合计算机科学与技术相关专业的学生和从业人员阅读使用。通过学习这本书,读者能够全面了解操作系统的基本概念和原理,提高操作系统的设计和开发能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值