首页 > 其他分享 >CSAPP随笔: 操作系统管理硬件

CSAPP随笔: 操作系统管理硬件

时间:2023-01-27 12:11:39浏览次数:49  
标签:CSAPP 上下文 操作系统 代码 主存 进程 随笔 虚拟内存

 

 

     操作系统看作是应用程序和硬件之间的一层软件,两个基本功能:1. 防止失控的应用程序滥用硬件。2. 向应用程序提供 简单一致 的机制来控制不同级别的硬件设备。

     操作系统的抽象概念:

     

 

     文件 是对 I/O设备 的抽象表示,向应用程序提供了一个统一的视图,虚拟内存 是对  主存及磁盘I/O设备 的抽象, 进程 是对 处理器主存及I/O设备 的抽象表示。

     进程 可以让 处理器 看上去 只处理 系统内存中的代码及数据。

     并发运行:通过处理器在 进程间的切换 来实现 两个进程的 指令交错执行,每个进行看上去独占硬件资源。

     什么是上下文?操作系统保持跟踪进程运行所需的所有状态信息,(PC,寄存器文件的当前值及主存的内容)。

     上下文切换的过程:1. 保存当前进程的上下文  2. 恢复新进程的上下文  3. 控制权传递到新进程。 4. 开始新的进程。

 

     线程:进程 由 多个执行单元 线程 组成, 每个 线程 运行在进程的 上下文中, 共享相同的 代码及 全局数据。相比 进程,更容易共享数据,更高效。

     虚拟内存: 让进程看到的内存是一致的,每个进程独占的使用主存。 地址空间最上面 保留给操作系统的代码及数据, 底部区域存放的是用户进程定义的代码及数据。

 

  分区介绍: 

              0. 代码从同一固定地址开始。

              1. 代码及数据区:存放C的全局变量,按照目标文件内容初始化。其大小 在进程 开始运行时被指定。

              2. 堆:大小在运行时可以调整。

              3. 共享库:中间部分存放 如 C标准库和数学库 的代码和数据。

              4. 栈:位于 用户 虚拟地址的 顶部,用于编译器实现函数调用,在执行期可以动态的缩放,函数调用时,栈会增长,函数返回时,栈会收缩。

              5. 内存虚拟内存: 虚拟地址顶部 为内核保留,禁止读写或直接调用内核代码定义的函数,必须由内核执行该区域的代码。

 

虚拟内存运作的软硬件交互: 硬件翻译处理器生成的地址,将 进程虚拟内存的内容 存放到 磁盘中,用主存 作为 磁盘的 高速缓存。

标签:CSAPP,上下文,操作系统,代码,主存,进程,随笔,虚拟内存
From: https://www.cnblogs.com/fourmi/p/17068758.html

相关文章

  • CSAPP随笔:高速缓存
       解决的问题:系统消耗大量的时间将信息从一个地方移动到另一个地方。较大的存储设备比较小的存储设备运行得慢。价格上速度快的要远高于速度慢的,同时加快处理......
  • CSAPP随笔: 系统的硬件组成
      1. 总线    一组电子管道,在各个部件传递信息字节,类比血管,传递的信息为定长的字节块,即字。 2.I/O设备   输入:键盘鼠标,输出:显示器,存储:存程序及......
  • CSAPP随笔:hello world到底是怎么运行的?
     通过命令行执行./test拆分:    0.shell是干什么的?:shell输出提示符,等待输入一个命令行并执行,若该字符串的首个单词不是shell命令,就假设为一个可执行文件的名......
  • Linux操作系统与常用命令
    Python进阶篇-系列文章全篇......
  • html随笔
    啥是html语言HTML是用来描述网页的一种语言。是超文本标记语言(HyperTextMarkupLanguage)不是编程语言,而是一种标记语言(markuplanguage)标记语言是一套标记标......
  • 《左耳听风》小记随笔 —— 管理设计
    分布式锁必须满足的要求安全性(Safety):在任意时刻,只有一个客户端可以获得锁(排他性)。避免死锁:客户端最终一定可以获得锁,即使锁住某个资源的客户端在释放锁之前崩溃或者网......
  • 性能基础随笔1
    1,影响软件性能的因素网络环境、数据路服务器、应用服务器、业务逻辑的实现方式、系统采用的架构、代码的优化程度、使用者的使用方式等2,软件性能测试的应用领域能力验证......
  • MIT——6.828:操作系统工程——第3章:实验三:用户环境
    在本实验中,我们将实现运行受保护的用户模式环境(即“进程”)所需的基本内核设施。我们将增强JOS内核,设置数据结构来跟踪用户环境,创建单个用户环境,将程序映像加载到其中,并开始......
  • 不使用U盘重新安装操作系统
     001、win+i,点击windows更新  002、点击高级选项  003、点击恢复   004、点击初始化电脑   005、点击保留我的文件   006、点击......
  • 一个故事看懂计算机操作系统的进化史
    计算机很久很久以前,有一台机器,体型巨大,每秒钟可以进行几千次的加法运算,名震一时,人类给它取了个名字:计算机。除了加法,它还能计算平方、立方、正弦、余弦,比人类的大脑算得快......