1 操作系统概述

作者: saviochen | 来源:发表于2017-05-16 21:03 被阅读121次

本系列文章力求用最简洁的语言整理出操作系统的知识框架,帮助求职的同学对操作系统的知识做一个梳理。

1. 操作系统的基本概念

操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源,合理组织调度计算机工作与资源分配,为用户及其他软件提供方便的接口和环境的程序集合。

操作系统是运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。

2. 操作系统的目标与作用

可以从不同的观点来观察操作系统的作用。

从资源的管理角度出发,可将操作系统视为计算机系统软件与硬件资源的管理者;从用户角度出发,操作系统则是用户与计算机硬件系统间的接口。此外,操作系统还实现了对计算机资源的抽象,隐藏了硬件的操作细节。

2.1 操作系统作为计算机系统资源的管理者
  • 处理机管理

在多道程序环境下,处理机的分配和运行都以进程(或线程)为基本单位。因此,对处理机的管理可归结为对进程的管理。其主要的职责包括:进程控制、进程同步、进程通信、死锁处理以及处理机调度等。

  • 存储器管理

存储器管理的目标是给多道程序提供良好的环境,方便用户使用以及提高内存的利用率。其主要职责包括内存分配、地址映射、内存扩充等。

  • 文件管理

计算机中的信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统。文件管理包括文件存储空间的管理、目录管理及文件读/写管理和保护等。

  • 设备管理

设备管理的主要任务是完成用户的I/O请求,方便用户对各种设备进行方便地使用,并提高各类设备的利用率。主要包括缓冲管理、设备分配、设备处理和虚拟设备等功能。

2.2 操作系统作为用户与计算机硬件系统之间的接口

为方便用户使用计算机,操作系统提供了用户接口。

操行系统提供的接口分为两类:一类是命令接口,用户利用操作命令来组织和控制作业的执行;另一类是程序接口,编程人员可以利用这些接口来请求操作系统的服务。

2.3 操作系统实现了对计算机资源的抽象

没有任何软件支持的计算机称为裸机,它向用户提供实际的硬件接口,用户必须对各类物理接口有一定的了解,并利用机器指令进行编程才能使用,使用难度较大。

为了方便用户使用计算机硬件,人们在裸机上覆盖上操作系统,由操作系统提供资源管理功能和各种服务,将裸机改造成功能更强、 使用更方便的机器。操作系统对隐藏了对硬件操作的细节,实现了对计算机资源的抽象。

3. 操作系统的基本特征

操作系统的基本特征包括:并发、共享、虚拟和异步。其中,并发和共享是操作系统的两个最基本的特征。

3.1 并发

并发是指两个或者多个事件在同一时间间隔内发生。值得一提的是,并行是指两个或者多个事件在同一时刻发生。在单处理机操作系统中,进程间只能并发,但设备与设备,设备与进程间是可以并发执行的。

通常,程序是静态实体。在多道程序系统中,引入进程的目的是为了使多个程序能够并发执行。进程由程序、数据和PCB构成,是一个能够独立运行的活动实体。同时,进程也是资源的基本分配单位,在没有引入线程的操作系统中,进程也是独立调度的基本单位。

线程比进程更小,基本不拥有资源。因此,对线程的切换开销比进程切换小得多,因而有效地提高了并发的程度。关于进程与线程间的讨论将在以后的章节进一步展开。

3.2 共享

共享(资源共享)是指系统中的资源可供内存中多个并发执行的进程共同使用。共享进一步可以分为互斥方式共享和同时访问共享。

  • 互斥方式共享

系统中的某些资源,如打印机、磁带机,虽然它们可以提供给多个进程使用,但为使所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程访问该资源。此类资源被称为临界资源或者独占资源。

  • 同时访问共享

系统中还有另一类资源,允许在一段时间内由多个进程在宏观上“同时”对它们进行访问。(而在微观上,这些进程可能是交替地对该资源进行访问即 “分时共享”)典型的可供多个进程“同时”访问的资源是磁盘设备,一些用重入码编写的文件也可以被“同时”共享,即若干个用户同时访问该文件。

3.3 虚拟

”虚拟“是指通过某种技术,把物理实体变为若干个逻辑上的对应物。用于实现虚拟的技术被称为虚拟技术。

在操作系统中利用两种方式实现虚拟技术:时分复用,空分复用。时分复用被用来实现虚拟处理机、虚拟设备等功能,空分复用的应用场景则为虚拟磁盘技术与虚拟存储器技术等。

3.4 异步

在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程只有在获得所需的资源后才能执行。因此,进程的执行不是一贯到底,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。

异步性使得操作系统运行在一种随机的环境下,可能导致进程出现与时间交错有关的错误。但是,只要运行的环境相同,操作系统必须保证多次运行程序,获得的结果是相同的。

相关文章

  • 1操作系统概述

    1.1操作系统概述 操作系统定义 ■ 没有公认的精确定义 ■ 操作系统是一个控制程序 一个系统软件 控制程序执行过...

  • 1 操作系统概述

    本系列文章力求用最简洁的语言整理出操作系统的知识框架,帮助求职的同学对操作系统的知识做一个梳理。 1. 操作系统的...

  • 操作系统(1)-概述

    1:整体内容 中断及系统调用 内存管理 进程及线程 处理机调度 同步互斥-进程间通讯 文件系统 I/O子系统 2:...

  • Linux简单命令

    linux 操作系统 一.linux 操作系统概述 1.常见操作系统- 服务端操作系统 : linux、unix、...

  • Shell典型应用之系统信息及运行状态获取

    1.Linux操作系统信息获取 1-1.概述 1-2.获取操作系统基本信息 获取为哪一种操作系统: 获取操作系统版...

  • Linux/Unix操作系统

    1.操作系统概述 操作系统:Oprating System,简称OS 概述:控制计算机硬件和软件的计算器程序,最基...

  • 一.操作系统概述(1)

    操作系统的作用 1.资源管理: (1)跟踪记录资源的使用状况 (2)确定资源分配策略——算法:静态分配策略、动态分...

  • 1. 操作系统概述

    1 操作系统做了什么 关于操作系统在程序执行中的作用,我们以一个小例子作为引入。下面的代码是用C语言编写的Hell...

  • 第一章 实时操作系统基础

    1.1 操作系统概述 1. 1.1 什么是操作系统 操作系统OS(Operating System)是裸机上的第一...

  • 1、操作系统概述(操作系统笔记)

    这里是学习了北大的操作系统原理课程做的笔记,这门课有一个好处就是基本上按照《现代操作系统》这本书来讲的,可以对照着...

网友评论

本文标题:1 操作系统概述

本文链接:https://www.haomeiwen.com/subject/tsttxxtx.html