【操作系统学习】操作系统概念(一)

一、操作系统的功能

       操作系统位于计算机用户与计算机硬件之间。操作系统的目的时提供操作环境,以便用户能够便捷而高效地执行程序。同时,操作系统时管理计算机硬件的软件。

      从用户视角来看,操作系统设计的主要目的是用户使用方便,次要的是性能,不在乎的是资源利用。当然,性能对用户来说也重要,不过这种系统优化的重点是单个用户的体验而不是多个用户的需求。

      从计算机的角度来看,操作系统是与硬件紧密相连的程序。因此,可将操作系统看作资源分配器。为了解决问题,计算机系统可能具有许多资源:CPU时间、内存空间、文件存储空间、I/O设备等。操作系统管理这些资源。面对许多甚至冲突的资源请求,操作系统应考虑如何为各个程序和用户分配资源,以便计算机系统能有效且公平地运行。

操作系统 的图像结果

二、操作系统的定义

      操作系统一直运行在计算机上的程序通常称为内核态(Kernel)。除了内核外,还有其他两类程序:系统程序应用程序。前者是与系统运行有关的程序,但不是内核的一部分;后者是与运行无关的所有其他程序。

     先在的移动设备的操作系统不只有内核,还有中间件(middleware)。中间件为应用程序开发人员提供其他功能的软件框架。例如,最常见的两个移动操作系统,Apple的iOS和Google的Android,除了内核外,都有中间件以便支持数据。

程序运行有两种状态:

  • 用户态:权限受限,无法完整执行操作系统。
  • 内核态:可以完全控制整个计算机操作系统。

为什么应用程序不能直接访问外设呢?

  • 在计算机中,内核是被信任的第三方。
  • 只有内核可以执行特权指令。
  • 为了方便应用程序。

三、操作系统的基本概念

系统调用:应用程序主动向操作系统发出服务请求。

异常:非法指令或者其他坏的处理状态。

中断:来自不同的硬件设备的计时器和网络的中断。

中断可分为硬件中断和软件中断。

硬件中断:

  • 设置中断标记(CPU初始化)

将内部、外部时间设置中断标记

中断事件的ID

软件中断:

  • 保存当前状态
  • 中断服务程序处理
  • 清除中断标记
  • 恢复之前的处理状态

跨越操作系统边界的开销

在执行时间上的开销超过程序调用

开销:

  • 建立中断/异常/系统调用号于对应服务例程映射关系的初始化开销
  • 建立内核堆栈
  • 验证参数
  • 内核态映射到用户态的地址空间更新页面映射权限
  • 内核态独立地址空间TLB

四、操作系统划分

由于操作系统较为复杂,需要划分为多个模块进行学习。

  • 内存管理
  • 进程管理
  • CPU调度
  • 同步机制
  • 文件系统管理
原文地址:https://www.cnblogs.com/keeptry/p/15718336.html