计算机原理学习笔记 Day11
API 通过多个 DLL 文件来提供。各 API 的实体都是用 C 语言编写的函数。
多任务指的是同时运行多个程序的功能。Windows 是通过时钟分割技术来实现多任务功能的。
时钟分割指的是在短时间间隔内,多个程序切换运行的方式。在用户看来,就是多个程序在同时运行。
用汇编语言编写的源代码,和本地代码是一一对应的。
大部分 C 语言编译器,都可以把利用 C 语言编写的源代码转换成汇编语言的源代码,而不是本地代码。
汇编语言的源代码,是由转换成本地代码的指令(后面讲述的操作码)和针对汇编器的伪指令构成的。
汇编语言指令的语法结构是操作码+操作数。
IRQ 指的是用来执行硬件中断请求的编号。
DMA 指的是,不经过 CPU 中介处理,外围设备直接同计算机的主内存进行数据传输。
IN 指令通过指定端口号的端口输入数据,并将其存储在 CPU 内部的寄存器中。OUT 指令则是把 CPU 寄存器中存储的数据,输出到指定端口号的端口。
显示器、键盘等外围设备都有各自专用的 I/O 控制器。I/O 控制器中有用于临时保存输入输出数据的内存。这个内存就是端口。
CPU 内部的寄存器是用来进行数据运算处理的,而 I/O 寄存器则主要是用来临时存储数据的。
一个 I/O 控制器既可以控制一个外围设备,也可以控制多个外围设备。各端口之间通过端口号进行区分。端口号也称为 I/O 地址。
IRQ 是用来暂停当前正在运行的程序,并跳转到其他程序运行的必要机制。该机制称为中断处理。
实施中断请求的是连接外围设备的 I/O 控制器,负责实施中断处理程序的是 CPU。
DMA 是指在不通过 CPU 的情况下,外围设备直接和主内存进行数据传送。
版权声明: 本文为 InfoQ 作者【穿过生命散发芬芳】的原创文章。
原文链接:【http://xie.infoq.cn/article/50d3b2f7e1ae618351d6619a3】。文章转载请联系作者。
评论