Running Hello World! Program,
简要阐述,计算机系统是如何执行Hello World!这个程序的。
当你在shell中输入Hello的时候,shell 程序让这些字符(word)通过I/O 桥进入CPU,读入寄存器,传入主存后并存储。
这个时候,你敲击“ENTER”键,shell程序确认输入完毕,开始加载可执行的 hello的机器指令,
这些指令通过DMA 技术直接从硬盘中调入主存,不通过CPU.
DMA Direct Memory Access.
执行完机器指令后,输出内容直接从寄存器复制到显示器。
在整个过程中,实际上执行的时间于传输数据的时间相比是少之又少,可见数据传输的速度是整个过程的瓶颈。
cache,高速缓冲存储器,
cache matters
存储器体积越大,价格越便宜,其传输速度越慢,反之亦然。
为了克服不同存储器之间的鸿沟,我们使用了cache的策略。
什么是cache-
to deal with the processor memory gap,system designers include smaller faster storage devices called caches that serve as temporary staging areas for information
that the processor is likely to need in the near future.
L1cache, tens of thousands of bytes, 几乎与寄存器读写一样块,
L2cache,hundreds of thousands to millions of bytes ,存取需要时间比L1长五倍,或者更多,但是仍然五到十倍快于主存。通过cache bus于处理器链接。
实施L1,L2的硬件技术被称为Static Random Access Memory SRAM.
存储设备的层次结构。
通过在处理器和大而慢的存储设备(比如,主存)插入一个小一点,但是快一点的存储设备提高系统效率是个好主意,事实上整个计算机的存储结构都是按这种方式来设计的。
CPU registers hold words retrieved form cache memory.L1 cache......form Memory,L2 cache form Memory,Main memory holds disk blocks retrieved form local disk,local disks hold
files retrived form disks on remote network servers.
寄存器占领整个层次的最顶层。
存储器结构的最核心的思想就是,高一级存储拿出一部分区域作为低一级存储的高速缓冲存储。存储最近常用的数据。
从程序员的视角看计算机的结构,chapter 0(3),
最新推荐文章于 2024-10-03 20:21:41 发布