首页 > 编程语言 >读《程序是怎样跑起来的》第十一章有感

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

时间:2024-02-29 16:24:10浏览次数:26  
标签:DMA 有感 第十一章 程序 中断请求 硬件 指令 内存 CPU

第十一章——硬件控制方法

1,应用和硬件无关?
Windows提供了通过应用来间接控制硬件的方法。利用操作系统可以实现对硬件的控制。
Windows向CPU传递了某些指令,从而通过软件控制硬件。

2.支撑硬件输入输出的in指令和out指令
in指令:通过指定端口号的端口输入数据,并将其存储在CPU内部的寄存器;
out指令:是把CPU寄存器中存储的数据,输出到指定端口号的端口。

3.编写测试用的输入输出程序

4.外围设备的中断请求
IRQ中断请求:
用来暂停当前正在运行的程序,并跳转到其他程序运行的机制。
外围设备的中断请求会使用不同于I/O端口的其他编号,该编号称为中断编号。

5.用中断来实现实时处理

6.DMA可以实现短时间内传送大量数据
DMA:是指在不通过CPU的情况下,外围设备直接和主内存进行数据传送。利用DMA大量数据就可以在短时间内传送到主内存。

7.文字及图片的显示机制
显示器中显示的信息一直存储在某内存中,该内存称为VRAM。在程序中,只要往VRAM中写入数据,该数据就会在显示器中显示出来。

以上为本章所学内容。

标签:DMA,有感,第十一章,程序,中断请求,硬件,指令,内存,CPU
From: https://www.cnblogs.com/zyk0915-/p/18044591

相关文章

  • 读《程序是怎样跑起来的》第十章有感
    第十章——通过汇编语言了解二程序的实际构成1.汇编语言和本地代码是一一对应的汇编语言:在各本地代码中,附带上表示其功能的英语单词缩写,这些缩写称为助记符,使用助记符的编程语言称为汇编语言。*通过查看汇编语言编写的源代码了解程序本质,同查看本地代码的源代码是同一级别。汇......
  • 程序员搞副业经验分享:卖书、做网课,探秘前同事的经验之谈
    为了更深入了解程序员如何进行创收,今天与一位曾在几年前成功通过卖书和网课获取收益的前同事进行了交流。由于他曾有过丰富的经验,我向他请教了一些相关经验,以下是我想获取的信息:你目前还在通过做网课获得收益吗?没有。不再从事网课的主要原因有两点:首先,工作非常繁忙,每天都在996(周......
  • java程序设计 - 第二次实验
    【实验目的】继续熟悉Eclipse的使用并尝试编写一个简单的Applet程序【实验过程】编写一个JavaApplet程序,并正在JavaApplet中写两行文字:“这是一个JavaApplet程序”和“我改变了字体”。importjava.applet.*;importjava.awt.*;publicclassJavaAppletextendsApplet......
  • 鲁班乐标数据抓取程序
    有老板找我开发的一套鲁班乐标数据下载程序,其实就是一套爬虫程序,作为一名资深码农来说这事不难,只是对方需要一个软件操作界面,希望自定义爬取条件。刚开始我第一个想到的是用Python来写,但是对方需要一个操作界面,当然Python也可以完成,由于我主要还是C#.Net为主,因此想到用C#开发试......
  • 《程序是怎样跑起来的》第八章理解
    计算机并不是只能运行本地代码,它还可以运行解释型代码、脚本等,但本地代码是其中一种常见的执行方式。本地代码是指用某种编程语言编写的源代码经过编译器编译后,直接生成可以在特定平台上运行的机器语言代码。这种代码与平台紧密相关,因此通常不可移植到其他平台。当你使用编译器编......
  • 程序是在何种环境下运行
    本章讲解了程序是怎样运行的,不同的程序不同的环境上不一定可以运行,而操作系统和硬件决定了程序的运行环境,同一类的硬件可以选择安装多种操作系统,但从程序运行环境来考虑,CPU的种类是特别重要的,从Windows克服了CPU以外的硬件差异可以看出(CPU不同本地代码不同)。不同操作系统的API不同......
  • 《程序是怎么跑起来的》第十一章
    第十一章的主题是“硬件控制方法”,主要介绍了程序如何控制CPU和主内存以外的硬件。通过阅读这一章,我了解到以下内容:1软件对硬件的重要性:如果没有软件,计算机就只是一个空箱子。软件的存在是硬件正常运行的必要条件,而硬件控制软件则是实现计算机功能的关键2IN和OUT指令:这两个指令......
  • 《程序是怎样他跑起来的》第三章
    读完《程序是怎么跑起来的》第三章后,我对计算机的内存管理有了更清晰的认识。这一章详细介绍了内存的组织方式、地址空间的概念以及内存的分配和释放过程。我了解到内存是计算机中非常重要的资源,程序运行时需要将数据和代码加载到内存中。内存的管理对于高效利用内存、避免内存泄......
  • 《程序是怎样跑起来的》第四章
    在阅读《程序是怎么跑起来的》第四章后,我对计算机的内存管理有了更深入的理解。这一章详细介绍了内存的概念、内存的分配和释放以及内存管理的重要性。我明白了内存是计算机中非常重要的资源,程序运行时需要将数据和代码加载到内存中。通过对内存的合理分配和使用,可以提高程序的性......
  • docker 部署.net core 3.1程序
    docker安装安装所需的软件包,yum-utils提供了yum-config-manager,并且devicemapper存储驱动程序需要device-mapper-persistent-data和lvm2。sudoyuminstall-yyum-utils\device-mapper-persistent-data\lvm2使用命令来设置docker仓库(阿里源,官方源太慢了)sudo......