代码改变世界

《程序是怎样跑起来的》第十一章

2019-03-30 11:39  薛肖肖  阅读(94)  评论(0编辑  收藏  举报

这一章讲的是硬件控制方法,我觉得是控制硬件的方法。

应用在调用硬件时的顺序是:应用←调用API→操作系统(一般是Windows)↗out指令→硬件,↗in指令→硬件。API系统调用,就是一个媒介,用来连接应用和硬件。In指令和out指令都是在通过特定的端口向CPU的寄存器输入或读出数据,因为这样可以提高速度。I/O控制器是用来连接计算机主机同外围设备之间电流特性的IC,外围设备都有各自专属的I/O控制器,也有各自专有的临时保存输入输出数据的内存(端口),各端口也都有自己的端口号(也叫I/O地址),提高了运行速度。

外围设备的中断请求。IRQ(中断请求)是用来暂停当前正在运行的程序,并跳转到其他程序的必要机制。这个机制称为中断处理。需要特别说的是:从中断处理开始到请求中断的程序运行结束之前,被中断的程序的处理是停止的。中断处理就是阻止你进行正在进行的工作,去完成中断处理的事情;在这期间,你正在进行的工作时停止的,而进行的是中断处理的事情;完成中断处理的事情之后才可进行你之前正在进行的工作。中断你的事情可能哟偶很多,这时候你就得一个一个的按照顺序来处理(计算机中的中断控制器)。有的时候你可以直接使用中断来实现实时处理,不需要调查直接再去处理数据。

接下来介绍了不使用CPU的情况下,外围设备直接和主内存进行数据的传输,就是DMA。DMA有自己的通道,省去了CPU,提高了数据的传输速度。IRQ和DMA都不是计算机所必备的,只是进行相关处理时必要的。

文字及图片的显示机制:即显示其中的显示的信息已支出存在某内存当中。显示器是不会储存的,只能够显示。这个某内存被称为VRAM,现在的计算机比较厉害已经在显卡中包含了。

控制硬件方法,就是应用应用硬件,外部应用硬件的过程和方法。