- 浏览: 142378 次
文章分类
最新评论
对于计算机系统底层技术,想必很多人都和我一样不太了解,最近在学相关书籍,了解到了CPU与磁盘交互时大致发生了哪些事情,现记录如下:
首先,我们得先了解到CPU与磁盘是通过I/O总线关联到一起的,CPU操作磁盘是通过一种叫做存储器映射I/O的技术来实现的。这种技术会在两者交互时单独划分出一块地址,每个这样的地址就称作I/O端口,然后磁盘就会映射到一个或多个I/O端口,用以绑定地址。
其次,CPU依次向磁盘发送指令:磁盘读(或写)命令、逻辑块号、主存地址。
然后,发送完指令后,CPU会转去执行其它任务(为了提高效率),磁盘则会将逻辑块号转换成对应的盘片、磁道、扇区组成的三元组,从而定位到了数据所在的扇区。之后磁盘会采用DMA(直接存储器访问技术,其不需要CPU干预)传送数据到CPU指定的主存地址。
最后,磁盘传送完毕后,会直接发送一个中断信号给CPU芯片的一个外部引脚,把CPU“召唤”回来重新执行先前未完成的任务。
过程大致如此,细节不去深究,如有不对,欢迎指出。
首先,我们得先了解到CPU与磁盘是通过I/O总线关联到一起的,CPU操作磁盘是通过一种叫做存储器映射I/O的技术来实现的。这种技术会在两者交互时单独划分出一块地址,每个这样的地址就称作I/O端口,然后磁盘就会映射到一个或多个I/O端口,用以绑定地址。
其次,CPU依次向磁盘发送指令:磁盘读(或写)命令、逻辑块号、主存地址。
然后,发送完指令后,CPU会转去执行其它任务(为了提高效率),磁盘则会将逻辑块号转换成对应的盘片、磁道、扇区组成的三元组,从而定位到了数据所在的扇区。之后磁盘会采用DMA(直接存储器访问技术,其不需要CPU干预)传送数据到CPU指定的主存地址。
最后,磁盘传送完毕后,会直接发送一个中断信号给CPU芯片的一个外部引脚,把CPU“召唤”回来重新执行先前未完成的任务。
过程大致如此,细节不去深究,如有不对,欢迎指出。
发表评论
-
浮点运算指令
2019-05-22 23:13 1575上一节介绍了浮点数与各种数值类型之间的相互转换 ... -
浮点数类型转换指令
2019-05-15 22:37 1710在浮点寄存 ... -
浮点寄存器概述
2019-05-14 22:31 2590本文介绍的浮点寄存器是基于 AVX2(Adva ... -
汇编指令之跳转指令
2019-04-15 00:21 4799正常执行的情况下,指令会按照顺序一条条地执行, ... -
汇编指令之条件码
2019-04-08 21:05 2359在系统底层,除了整数寄存器,CPU 还维护着一 ... -
汇编指令之算术和逻辑操作指令
2019-03-28 22:16 1382下表是 x86-64 ... -
汇编指令之数据传送指令
2019-03-25 21:28 1288在x86-64 中的 ... -
x86-64 中的寄存器与汇编操作数杂述
2019-03-20 21:45 993Intel 中常用 ... -
hello 程序执行背后的故事
2018-12-26 21:48 608源文件 hello. ... -
linux启动服务概述
2017-04-08 02:43 398传统的linux中定义了七个运行级,分别如下: ... -
unix限制
2017-04-04 16:08 579UNIX系统实现定义了很多幻数和常量,其中有很 ... -
linux引导加载程序--GRUB
2017-04-04 04:22 625linux世界里有两种 ... -
存储器映射
2016-06-13 00:12 553注:本文摘自《深入理解计算机操作系统》第九章--虚拟存 ... -
虚拟存储器对存储器管理的作用
2016-06-10 16:00 695注:本文中的大部分内容均是摘录自《深入理解计算机系统》一书,权 ... -
信号处理问题
2016-06-03 08:31 561注:本文摘自《深入理解计算机系统》第8章 --- 异常控制流。 ... -
僵尸进程
2016-05-23 23:57 361在解释僵尸进程的概念之前,我们得先了解这样的一个事实: 一个进 ... -
程序优化之存储器别名使用
2016-05-20 08:55 797说明:本文示例摘自《深入理解计算机系统》第五章----优化程序 ... -
条件变量基本概念与原理(转载)
2016-05-20 08:54 1579对于条件变量,我一直感到很困惑,搞不清其与互斥锁到底有啥区别, ... -
存储器层次结构中基本的缓存原理
2016-05-19 09:00 668对于操作系统,我们知道,越靠近CPU的存储器,其存储速度就会越 ... -
异常处理
2016-05-19 00:29 424我知道很多人都知道异常处理,但可能对其底层并不太了解,现在我们 ...
相关推荐
5. **前端框架集成**:虽然描述中没有提及,但实际应用中,可能需要结合前端框架(如React、Vue或Angular)来构建更复杂的页面结构和交互逻辑,FusionCharts也提供了与这些框架的集成指南。 6. **数据可视化设计...
磁盘序列号是每个硬盘驱动器特有的一个唯一标识符,由硬盘制造商在生产过程中赋予。这个号码在硬件层面是不可更改的,通常用于追踪硬盘的生产和销售,以及在需要时验证产品的合法性。在Windows操作系统中,我们可以...
本文将围绕磁盘传输模式(特别是DMA模式)、操作系统与硬件的交互方式以及如何通过调整系统设置来优化磁盘性能展开讨论。 #### 一、磁盘传输模式概述 磁盘数据传输主要通过两种模式:**PIO(Programmed I/O)模式*...
磁盘I/O优化不仅能够显著提升数据读写速度,还能增强系统响应能力和数据处理效率,因此,深入理解磁盘I/O的工作原理及其与AIX系统的交互机制显得尤为重要。 #### 理解AIX I/O栈 AIX的I/O栈是连接物理磁盘和应用...
5. **设备文件**:设备驱动程序通常表现为文件,用户程序通过标准的文件操作与设备驱动通信,从而间接与硬件交互。 6. **信号(Signal)**:内核可以通过发送信号来通知用户空间某些事件的发生,如进程异常、时间...
这一过程涉及到对系统监控工具的使用,理解进程与CPU之间的交互,以及如何解析输出信息。下面将详细介绍如何在Linux环境下查看某一进程的CPU占用率。 1. **使用`top`命令** `top`命令是最常用的实时监控系统资源的...
例如,XX公司的网络结构展示了图书馆服务器如何通过磁盘阵列与LAN、路由器、SCSI服务器以及终端用户进行交互,确保数据的高效流通和存储。 磁盘阵列的核心技术是RAID,它通过组合多个廉价磁盘来提升性能和数据安全...
`WMIC`是Windows Management Instrumentation Command-line的缩写,它提供了一种与WMI(Windows Management Instrumentation)交互的方式。通过`wmic process where name='process_name.exe' get WorkingSetSize,CPU...
在Linux系统中,监控CPU、内存、磁盘和网络流量对于理解系统的性能和健康状况至关重要。以下是一些常用的命令和脚本技术来实现这些监控功能: 1. **CPU监控**: - `cat /proc/stat`: 提供了所有CPU活动的详细信息...
它展示了如何通过前端和后端的交互,动态地在Web页面上展示服务器的CPU使用情况,帮助管理员实时了解系统负载。 首先,jQuery是一个广泛使用的JavaScript库,提供了丰富的API来简化DOM操作、事件处理和AJAX交互。在...
这个项目旨在设计和实现一个基本的、功能完备的最小化汇编语言级CPU模拟器,它能够处理基本指令,进行I/O操作,如与控制台、打印机、磁盘交互,并具备寄存器管理和文件管理能力。此外,还包括一个命令解释语言处理...
在脚本运行过程中,会有以下几步交互: 5.a. 目标目录选择:根据提示选择刚刚创建的安装目录。 5.b. 工具集选择:选择适合你系统环境的工具集,这对于正确编译和执行基准测试至关重要。 5.c. 文件解压和验证:安装...
在Linux系统中,我们通常使用`snmpget`和`snmpwalk`这两个命令来与远程设备进行交互。`snmpget`用于获取单个特定的MIB对象(Management Information Base)值,而`snmpwalk`则可以遍历整个MIB树,获取一系列相关对象...
CPU与存储器之间的交互是通过总线实现的,总线是连接CPU和其他硬件组件的一组信号线,分为数据总线、地址总线和控制总线。数据总线传输数据,地址总线确定存储器单元的位置,而控制总线则发送各种操作信号,如读/写...
DOS,全称为Disk Operating System,是微软在20世纪80年代推出的一种命令行操作系统,它为用户提供了与计算机硬件交互的基本接口。在这个场景下,"DOS状态测试CPU"可能是指在DOS环境下进行的处理器性能测试或故障...
- I/O接口允许CPU与外部设备通信,如键盘、显示器或磁盘驱动器。设计时需考虑到数据传输的同步问题和中断处理机制。 9. **项目2:multi-cycle CPU**: - 提供的项目文件“project2_multi-cycle CPU”可能包含了...
总结来说,获取CPU和硬盘温度涉及操作系统级别的交互,可能需要利用特定的系统API、库或者第三方工具。在C和C++中实现这一功能需要对操作系统和硬件监控有深入的理解,以及熟悉相关库的使用。通过以上方法,开发者...
1. 硬件辅助虚拟化:现代CPU(如Intel VT-x和AMD-V)提供了硬件辅助虚拟化功能,允许虚拟机直接与硬件交互,减少了虚拟化开销,提高了性能。虚拟机管理程序在硬件层面上进行控制,确保各个虚拟机的安全隔离。 2. ...
和目前 PC 用单磁盘内部集成缓存一样,在磁盘阵列内部为加快与主机交互速度,都带有一定量的缓冲存储器。 磁盘阵列的优点:磁盘阵列的优点包括提高数据的安全性、提高储存的吞吐量、加速计算机整体的数据流量、提高...
- iowait:CPU等待I/O操作完成的时间,与磁盘性能有关。 5. **日志记录与报警**: 设置阈值,当CPU使用率超过预设值时,自动记录日志或触发报警,以便及时响应。 6. **云环境监控**: 在云计算环境中,如AWS、...