在写本章的内容之前,LZ先做个小广告。其实也不算是什么广告,就是LZ为了和各位猿友交流方便,另外也确实有个别猿友留言或者在博客里发短消息给LZ要联系方式。因此LZ斗胆建立了一个有关《深入理解计算机系统》这本书的交流群,当然了,如果有哪位猿友有其它方面的问题,也可以在群里提出 ...
上一章我们讲解了hello world 程序在计算机系统中是如何运行的。hello 程序的机器指令最初是存放在磁盘上的,当程序加载时,他们被复制到主存 当处理器运行程序的时候,指令又从主存复制到处理器。相似的,数据串 Hello World 初始时在磁盘上,然后复制到主存,最后从主存上复制到显示设备。 从程序员的角度来看,上面的复制就是开销,减缓了程序的真正工作。因此如何将这些复制操作尽快完成则 ...
2017-09-11 19:43 1 3726 推荐指数:
在写本章的内容之前,LZ先做个小广告。其实也不算是什么广告,就是LZ为了和各位猿友交流方便,另外也确实有个别猿友留言或者在博客里发短消息给LZ要联系方式。因此LZ斗胆建立了一个有关《深入理解计算机系统》这本书的交流群,当然了,如果有哪位猿友有其它方面的问题,也可以在群里提出 ...
深入理解计算机系统 卡内基·梅隆一门棵。 原书第3版资料. 第三版源码. 原书第2版资料. 计算机系统漫游 源文件到目标文件的翻译过程可分为四个阶段, 这四个阶段的程序被称为预处理器,编译器,汇编器和链接器,它们一起构成了编译系统(compilation ...
Computer Systems A Programmer's perspective 关于进程与线程的相关知识 进程 像hello这样的程序在现代系统上运行时,操作系统会提供一种假象,就好像系统上只有这个程序在运行。程序看上去是独占地使用处理器、主存和I/O设备。处理器看上去就 ...
前面我们介绍了《深入理解计算机系统》第一章的内容----计算机系统漫游。包括简单介绍了 Hello World 程序在计算机中是如何运行的,存储设备的层次结构以及操作系统的抽象概念。第一章的内容只是对很多概念有个简单了解,所以还是不懂的话也不要紧,后面都会对这些概念进行深入的探究。而这 ...
《深入理解计算机系统》,这本书,我多次想要好好完整的读一遍,每次都是没有坚持下去,但是作为一个开发者,自己想要成为为数不多的大牛之一,所以打算这次把这本书完整的好好读一遍,并整理为相关的博客! 书的开头说了一句话:计算机系统是由硬件和系统软件组成,他们共同工作来运行应用程序。我们通常接触更多 ...
本来LZ是打算好好研究一下JVM源码的,不过想来想去,LZ觉得应该先了解计算机系统的原理,再去研究JVM源码的精妙。因此LZ决定潜下心来好好研究下计算机系统原理,这是一个漫长的过程,因为《深入理解计算机系统》这本书很厚,而且这种书一般看起来速度不会太快。因此LZ打算做好每一个 ...
上一章LZ给各位展示了一下hello程序的简单执行过程,可以看出在这一过程当中,系统在数据的传输上花费了大量的时间。硬件开发商为了减少这种数据传输的时间成本,采用一种高速缓存的技术去减少这种时间成本。 高速缓存被置放于处理器当中,与处理器中的寄存器文件 ...
虚拟存储器 虚拟存储器是硬件异常、硬件地址翻译、主存、磁盘文件和内核软件的完美交互,它为每个进程提供了一个大的、一致的和私有的地址空间。通过一个很清晰的机制,虚拟存储器提供了三个重要的能力: (1)它将主存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘 ...