操作系统 计算机系统概述

操作系统(Operating System)是计算机系统中的一种系统软件,它管理和控制计算机硬件资源,为用户和应用程序提供一个可靠、方便的工作环境。下面是关于操作系统的基本概念、发展历程以及程序运行环境的介绍。

基本概念

操作系统是计算机系统中的核心软件,它负责管理和协调计算机硬件和软件资源,为用户和应用程序提供接口和服务。操作系统的基本功能包括进程管理、内存管理、文件系统管理、设备驱动程序管理等。
**特征:**并发,共享,虚拟,异步

发展历程

操作系统的发展经历了几个重要阶段。早期计算机系统没有操作系统,用户需要直接操作硬件。随后,批处理操作系统出现,使得用户可以将作业批量提交并由系统自动处理。后来,多道程序设计技术和时间片轮转调度算法的引入,实现了多个程序并发执行。随着个人计算机的普及,图形用户界面(GUI)操作系统成为主流,提供了更友好的用户界面。现代操作系统也面向分布式系统和云计算提供支持,以应对日益增长的计算需求。

手工----批处理(单道批处理,多道批处理)----分时操作系统----实时操作系统

程序运行环境

CPU运行模式

CPU有两种运行模式:内核模式(也称为特权模式)和用户模式。在内核模式下,CPU可以执行特权指令并访问所有的硬件资源;而在用户模式下,CPU只能执行受限的指令集,并且对硬件资源的访问受到限制。这种模式的划分可以保护操作系统的核心部分,防止用户程序对系统造成破坏。

内核模式与用户模式

操作系统的内核通常运行在内核模式下,而用户程序运行在用户模式下。用户程序通过系统调用(system call)向内核请求操作系统的服务,内核在接收到系统调用时切换到内核模式执行相应的操作,并返回结果给用户程序。

中断和异常的处理

中断是指来自硬件的信号,用于向处理器通知某个事件的发生,如设备的输入输出、定时器的触发等。当发生中断时,处理器会立即中断当前任务的执行,保存当前状态,并跳转到中断处理程序执行相关操作。异常是指程序运行过程中的意外事件,如非法指令、访问非法内存等。处理器在检测到异常时会触发异常处理程序,以处理异常情况。

系统调用

系统调用是用户程序与操作系统之间进行交互的一种方式。用户程序通过系统调用请求操作系统的服务,如创建进程、打开文件、发送网络请求等。操作系统会提供一组系统调用接口,用户程序通过调用这些接口来实现相应的功能。系统调用的执行需要切换到内核模式,由内核完成相应的操作并返回结果给用户程序。

程序的链接和装入

在程序编译过程中,源代码会被编译成目标文件。链接器将多个目标文件和库文件合并生成可执行文件。装入器将可执行文件加载到内存中,并分配内存空间,使得程序可以运行。装入器还会解析可执行文件的指令和数据,并建立程序的地址空间。

程序运行时内存映像与地址空间

程序运行时,操作系统会为每个进程分配一块独立的内存空间,称为地址空间。地址空间包括代码段、数据段、堆和栈等区域。代码段存放程序的指令,数据段存放静态变量和全局变量,堆用于动态分配内存,栈用于函数调用和局部变量的存储。操作系统通过内存管理来管理和分配地址空间。

操作系统结构

操作系统的结构可以采用不同的组织方式,常见的包括分层结构、模块化结构、宏内核、微内核和外核等。

分层

分层结构将操作系统分为多个层次,每个层次负责不同的功能。上层的功能依赖于下层的功能,形成层次结构。常见的层次包括硬件层、内核层、文件系统层、用户界面层等。每个层次只与相邻层次进行通信,提高了系统的可扩展性和可维护性。

模块化

模块化结构将操作系统划分为多个相互独立的模块,每个模块负责不同的功能。模块之间通过定义良好的接口进行通信。这种结构使得系统的开发和维护更加容易,可以对模块进行独立的测试和修改。

宏内核

宏内核将操作系统的核心功能以及设备驱动程序等集成在一个单独的地址空间中。宏内核的设计简单高效,但由于功能耦合紧密,一个组件的错误可能会影响整个系统的稳定性。

微内核

微内核将操作系统的核心功能进行最小化,将大部分功能移出内核,作为独立的用户进程运行。微内核提供基本的调度、内存管理和进程间通信等功能,其他服务通过进程间通信来实现。这种结构提高了系统

的可扩展性和可靠性,但由于进程间通信的开销较大,性能可能会受到一定影响。

外核

外核是一种新兴的操作系统结构,将操作系统运行在硬件之上,而不是直接运行在裸机上。外核负责管理和调度多个操作系统实例,每个实例运行在独立的地址空间中。外核提供了更好的资源隔离和安全性,同时可以支持不同操作系统的并行运行。

操作系统引导

操作系统引导是指计算机系统启动时,从非易失性存储器(如硬盘)中加载操作系统到内存并运行的过程。引导程序位于引导扇区(Boot Sector)中,负责引导加载操作系统。引导扇区是存储介质中的第一个扇区,通常由引导加载程序(Bootloader)填充,它会加载操作系统的核心部分并将控制权转交给操作系统。

常见引导过程:激活CPU-硬件自检-加载带有操作系统的硬盘-加载主引导记录MBR-扫描硬盘分区表-加载分区表PBR-加载分区引导记录PBR-加载启动管理器-加载操作系统

虚拟机

虚拟机是一种软件实现的计算机系统,可以在现有的计算机系统上运行其他操作系统和应用程序。虚拟机管理程序(Hypervisor)在物理硬件和虚拟机之间提供了一个中间层,负责虚拟化硬件资源,并将其分配给虚拟机。每个虚拟机都运行在独立的环境中,具有自己的操作系统和应用程序,相互之间相互隔离。虚拟化技术可以提高硬件资源的利用率,简化系统管理,并支持在同一台物理机上运行多个操作系统和应用程序。

注意点

并发性和并行性
并发性(Concurrency)是指多个事件或任务在同一时间段内执行,通过时间片轮转等方式实现多个任务的快速切换,给人一种同时执行的感觉。并行性(Parallelism)是指多个事件或任务在同一时刻同时执行,利用多核处理器或分布式系统的多个计算资源实现真正的并行执行。

特权指令和非特权指令
特权指令(Privileged Instruction)是指只能在内核模式下执行的指令,具有对硬件资源和操作系统核心功能的直接访问权限。非特权指令(Non-privileged Instruction)是指在用户模式下执行的指令,受到操作系统的限制,无法直接访问特权级别较高的资源。

访管指令和访管中断
访管指令(Supervisor Call Instruction)是一种特殊的指令,用于在用户程序中向操作系统发起系统调用请求。通过访管指令,用户程序切换到内核模式,执行操作系统提供的特权操作,并返回结果给用户程序。

访管中断(Supervisor Call Interrupt)是一种中断事件,当用户程序执行访管指令时,触发访管中断,将控制权转交给操作系统的中断处理程序。中断处理程序负责识别并处理访管请求,执行相应的操作,并返回结果给用户程序。

定义微内核结构OS的四个方面
最小化内核:微内核将操作系统的核心功能最小化,只包含必要的功能,如进程管理、内存管理和进程间通信等。其他服务和功能被实现为独立的用户进程运行。
通信机制:微内核通过进程间通信机制(如消息传递、共享内存等)实现模块之间的通信和交互。不同模块通过消息传递进行数据传输和协作。
模块化设计:微内核采用模块化的设计,将操作系统功能划分为独立的模块,每个模块负责特定的功能。这种设计使得系统的开发和维护更加容易,模块之间的独立性提高了系统的可靠性和可扩展性。
安全性和保护机制:微内核通过强制模块间的边界和权限分离,实现了更好的安全性和保护机制。不同模块运行在独立的地址空间中,互相隔离,一个模块的错误不会影响整个系统的稳定性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值