操作系统相关问题——软件是如何访问硬件的

简介: 硬件是各种各样的,发展速度还是非常快的。每个硬件都有自己的个性,操作系统不可能及时更新各种硬件的驱动方法(不可能刚出某个新硬件,OS开发者就开始为其编写驱动,这显然不现实)。因此便出现了各种硬件适配器,这就是IO接口。接口其实就是标准,大家生产生出来的硬件按照这个标准工作就实现了通用。硬件在输入输出上大体分为串行和并行,相应的接口也就是串行接口和并行接口。

硬件是各种各样的,发展速度还是非常快的。每个硬件都有自己的个性,操作系统不可能及时更新各种硬件的驱动方法(不可能刚出某个新硬件,OS开发者就开始为其编写驱动,这显然不现实)。


因此便出现了各种硬件适配器,这就是IO接口。接口其实就是标准,大家生产生出来的硬件按照这个标准工作就实现了通用。硬件在输入输出上大体分为串行和并行,相应的接口也就是串行接口和并行接口。



访问外部硬件有两个方式:


  • 将某个外设的内存映射到一定范围的地址空间中,CPU通过地址总线访问该内存区域时会落到外部的内存中,这种映射让CPU访问外设的内存就如同访问主板上的物理内存一样。


显卡就是这么做的。显卡是显示器的适配器,CPU不直接和显示器交互,它只和显卡通信。显卡上有片内存叫显存,它映射到主机物理内存上的低端1MB的0xB8000-0xBFFFF。CPU访问这片内存就是访问显存,往这片内存写字节便是往屏幕上打印内容。


  • CPU通过访问IO接口与外设通信,CPU访问外设就是访问IO接口,由IO接口将信息传给另一端的外设,也就是说CPU从来不知道有这些设备的存在,它只知道自己操作的IO接口。


IO接口位于总线与IO设备之间,接口上有一些寄存器,访问IO接口本质上就是访问这些寄存器,这些寄存器就是人们常说的端口。这些端口是IO接口给CPU和外设使用提供的接口


相关文章
|
10天前
|
IDE Linux 开发工具
DP读书:鲲鹏处理器 架构与编程(十三)操作系统内核与云基础软件
DP读书:鲲鹏处理器 架构与编程(十三)操作系统内核与云基础软件
38 1
|
2月前
|
人工智能 算法 安全
解读产业趋势,展现核心成果!统信软件分论坛议程新鲜出炉 | 2023 龙蜥操作系统大会
从研发到构建再到迭代,一起看统信首次提出的分层分类算法的实现,赋予操作系统新生命。
解读产业趋势,展现核心成果!统信软件分论坛议程新鲜出炉 | 2023 龙蜥操作系统大会
|
4月前
|
存储 人工智能 安全
|
4月前
|
PyTorch 算法框架/工具 Docker
Docker 镜像和你的操作系统或者硬件有一些兼容性问题。
Docker 镜像和你的操作系统或者硬件有一些兼容性问题。
58 2
|
6月前
|
存储
计算机操作系统学习笔记(1)——硬件结构
计算机操作系统学习笔记(1)——硬件结构
67 0
|
6月前
|
C语言
操作系统硬件一些知识
操作系统硬件一些知识
56 1
|
8月前
|
存储 缓存 网络协议
第四章操作系统和硬件优化
第四章操作系统和硬件优化
|
9月前
|
存储 数据可视化 中间件
操作系统和高级编程语言时硬件抽象化及Windows操作系统的特征
操作系统和高级编程语言时硬件抽象化及Windows操作系统的特征
70 0
操作系统和高级编程语言时硬件抽象化及Windows操作系统的特征
|
9月前
|
存储 监控 安全
红旗软件正式发布龙蜥社区版国产高可靠操作系统
Red Flag Anolis Linux V8.5 为广大用户提供安全、稳定、高性能、高可靠的操作系统。
|
9月前
|
存储 资源调度 监控
【操作系统】操作系统硬件组成和进程
【操作系统】操作系统硬件组成和进程
【操作系统】操作系统硬件组成和进程

热门文章

最新文章