深入理解计算机系统期末,深入理解计算机系统第一章小结。

程序就是数据和指令的集合。

将编写的程序代码翻译为可执行程序的过程需要经历4个阶段,这4个阶段统称为编译系统。

20200319161620722ib26xgifkyzrmyd_0.png

系统硬件组成

总线:

贯穿整个系统的电子管道,称为总线。他携带字节并在各个部件之间传递。

I/O设备:

是系统与外部的联系通道,比如作为输入设备的键盘,作为输出设备的显示器还有磁盘等。

主存:

系统临时存储设备。用来存放程序和程序处理的数据。简称DRAM。

处理器:

CPU,执行指令。由寄存器等部件组成。

运行程序

20200319161620722ib26xgifkyzrmyd_4.png

① 当我们在键盘上输入内容时shell程序将输入内容读到寄存器再存入内存

②当我们敲击回车时shell程序知道我们已经结束了命令输入。然后shell程序执行一系列指令来加载可执行文件hello文件。

③这些程序将hello目标文件中的代码从磁盘复制到主存“包括“”最终输出字符串hello,world

20200319161620722ib26xgifkyzrmyd_3.png

④代码数据加载到主存处理器就开始执行hello程序的main程序的机器指令,字符串的字节从主存复制到寄存器再从寄存器中复制到显示设备。

高速缓存

处理器近期要执行的指令都会放在高速缓存中,极大提高处理速度。

缓存结构L1-L3  数字越高速度越慢。

20200319161620722ib26xgifkyzrmyd_5.png

操作系统管理硬件

20200319161620722ib26xgifkyzrmyd_2.png

防止硬件被失控程序滥用。

像应用程序提供简单一致的机制来控制复杂的各种设备。

操作系统通过几个抽象概念(进程、虚拟内存、文件)来实现上述功能。

20200319161620722ib26xgifkyzrmyd_1.png

其中进程是对处理器、主存、IO设备的抽象 其他同理。

进程:

是计算机资源分配的最小单位,

进程是操作系统对一个正在运行的程序的一种抽象。

一个CPU好像同时执行多个进程是通过上下文切换实现的。

操作系统保持跟踪进程运行所需的所有状态信息,称为上下文。

假设两个进程 shell和hello ,

最开始我们在shell中让他执行hello程序,shell专门调用一个函数既系统调用来执行我们的请求,系统调用将控制权传递给操作系统,操作系统保存shell的上下文,创建一个新的进程hello及其上下文,将控制权给hello进程,hello进程终止后操作系统恢复shell的上下文,并给shell控制权。

shell进程等待下一个命令输入。

从一个进程到另一个进程的切换是操作系统内容管理,内核是操作系统系统代码常驻主存的部分,当应用程序需要操作系统的某些操作,比如读写文件,他就执行一个特殊指令“系统调用”,将控制权给内容,内核执行请求的操作返回给程序。

内核不是一个独立进程,他是系统管理全部进程所用代码和数据结构的集合。

线程

线程是计算机调度的最小单位。

多线程比多进程更容易共享数据。线程更高效,多处理器时多线程可以使程序运行的更快。

每个线程都运行在进程的上下文中共享同样的代码和全局数据。

虚拟内存

是抽象概念,为每一个进程提供一个自己独占内存的假象,每个进程看到的内存都是一致的,成为虚拟地址空间。

堆的大小可以在运行时铜带扩展和收缩。

编译器用它来实现函数调用,动态扩展和收缩。

内核虚拟内存

为内核保留,不允许程序读写这个区域

文件

就是字节序列,每个IO设备磁盘显示器等都可以看做是文件。

系统所有输入输出都是通过IO系统调用读写文件实现的。

网络也是一种IO设备。

线程级并发

单处理器在多个任务间切换。

超线程

每个单位时间内,一个单运行管线的CPU只能处理一个线程,以这样的单位进行,如果想要在一单位时间内处理超过一个线程是不可能的,除非是有两个CPU的实体单元。双核技术技术是将两个一样的CPU放置于一个封装内(或直接将两个CPU做成一个芯片),而英特尔的多线程技术是在CPU内部仅复制必要的资源、让两个线程可同时运行;在一单位时间内处理两个线程的工作,模拟实体双核心、双线程运作。

超线程技术把多线程处理器内部的两个逻辑内核模拟成两个物理芯片,让单个处理器就能使用线程级的并行计算,进而兼容多线程操作系统和软件。超线程技术充分利用空闲CPU资源,在相同时间内完成更多工作

虽然采用超线程技术能够同时执行两个线程,当两个线程同时需要某个资源时,其中一个线程必须让出资源暂时挂起,直到这些资源空闲以后才能继续。因此,超线程的性能并不等于两个CPU的性能。而且,超线程技术的CPU需要芯片组、操作系统和应用软件的支持,才能比较理想地发挥该项技术的优势。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值