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


    一、操作系统的功能

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

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

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

    操作系统 的图像结果

    二、操作系统的定义

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

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

    程序运行有两种状态:

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

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

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

    三、操作系统的基本概念

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

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

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

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

    硬件中断:

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

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

    中断事件的ID

    软件中断:

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

    跨越操作系统边界的开销

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

    开销:

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

    四、操作系统划分

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

    • 内存管理
    • 进程管理
    • CPU调度
    • 同步机制
    • 文件系统管理
  • 相关阅读:
    【weka应用技术与实践】过滤器
    【软件分析与挖掘】Vision of Software Clone Management: Past, Present, and Future (Keynote Paper)
    【软件分析与挖掘】Multiple kernel ensemble learning for software defect prediction
    【Thinking in Java-CHAPTER 3】操作符
    【软件分析与挖掘】A Comparative Study of Supervised Learning Algorithms for Re-opened Bug Prediction
    【Thinking in Java-CHAPTER 1&&2】对象导论&&一切都是对象
    【cs229-Lecture20】策略搜索
    【cs229-Lecture19】微分动态规划
    【cs229-Lecture18】线性二次型调节控制
    【cs229-Lecture17】离散与维数灾难
  • 原文地址:https://www.cnblogs.com/keeptry/p/15718336.html
Copyright © 2020-2023  润新知