独立编址,统一编址,IO端口,IO内存,冯·诺伊曼,哈佛结构

独立编址,统一编址,IO端口,IO内存,冯·诺伊曼,哈佛结构独立编址,统一编址:I/O地址空间与内存地址空间编址方式是否统一?例如51为统一编址,I/O和存储器总计64K地址空间;X86为独立编址,分为I/O地址空间和存储器地址空间。IO空间,内存空间X86:支持内存空间,IO空间,独立编址。ARM,MIPS,PowerPC只支持内存空间,即统一编址。IO端口和IO内存:对于X86系统区别很大,例如,网卡接口,可以连接在IO的这

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

独立编址,统一编址: I/O地址空间与内存地址空间编址方式是否统一?例如51为统一编址,I/O和存储器总计64K地址空间;X86为独立编址,分为I/O地址空间和存储器地址空间。 IO空间,内存空间

X86:支持内存空间,IO空间,独立编址。 ARM,MIPS,PowerPC只支持内存空间,即统一编址。

IO端口和IO内存:对于X86系统区别很大,例如,网卡接口,可以连接在IO的这一组地址总线上,也可以连接在内存的这一组地址总线上,就可分别出现IO端口和IO内存的区别。

IO端口:当一个寄存器或内存位于IO空间时,称之为IO端口。

IO端口的操作:申请,访问,释放

申请:struct resource * __request_region(struct resource *parent, resource_size_t start, resource_size_t n, const char *name, int flags)

申请完以后,可以在/proc/ioports下面看到端口的占用情况。

访问:static inline int inb(unsigned long i) //读字节端口(8位) static inline void outb(char c, unsigned long i)//写字节端口(8位)其余访问16位,32位IO端口的函数为:inw,outw,inl,outl。

IO内存:当一个寄存器或内存位于内存空间时,称之为IO内存。

IO内存的操作:申请,映射,访问,释放

申请:request_mem_region(start, n, name)//start:申请的起始地址,n:申请的长度,name:申请使用区域的名字。

申请完以后,同样可以在/proc/iomem中查看iomem的使用情况。

映射:由于linux系统中不能直接使用物理地址,必须使用虚拟虚拟地址,所以对IO内存的操作,必须有一个映射的过程。

映射函数:ioremap(cookie, size)//cookie:物理地址,size :映射大小。

访问:访问IO内存,最好不要直接用*addr直接赋值的方式来完成,在某些情况下易出错,推荐使用内核已经提供的函数来完成。内核提供的函数有:ioread8,iowrite8,ioread16,iowrite16,ioread32,iowrite32等函数。而老版本的内核中也提供了例如:readb,writeb,readw,writew,readl,writel等函数

释放:iounmap()和release_mem_region()

冯·诺伊曼,哈佛结构: 哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储 器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的 PIC16芯片的程序指令是14位宽度,而数据是8位宽度。 目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公 司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构 冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。 目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188517.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PLsql 永久注册码「建议收藏」

    PLsql 永久注册码「建议收藏」 注册码:ProductCode:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqzserialNumber:601769password:xs374ca  原文链接:https://blog.csdn.net/sinat_33142609/article/details/72540025

    2022年7月24日
    553
  • spug自动化运维平台开源项目部署搭建

    spug自动化运维平台开源项目部署搭建灵活、强大、功能全面的开源运维平台

    2022年5月16日
    44
  • 用我的亲身经历来告诉你如何自学Java?

    用我的亲身经历来告诉你如何自学Java?在我的另一篇博文——【一年总结】记我的大一生活中,我其实已经谈过了我的大一经历,但是对于我自学Java的地方往往都是一笔带过的,因为那篇博文主要是想记录我那时所思所想,表达的主要是一种情感,而非“攻略”。所以我觉得我有必要另起一篇来专门讲讲我是如何一步一步自学Java的。

    2022年7月7日
    29
  • C#实现一个局域网文件传输工具

    C#实现一个局域网文件传输工具工作需要,经常会在工作的台式机和笔记本之间传文件或者需要拷贝文本,两个机器都位于局域网内,传文件或者文本的方式有很多种,之前是通过共享文件夹来进行文件的拷贝,或者通过SVN进行同步。文本传递比较简单,可以通过两台机器上装QQ登两个号码,或者在共享目录下建一个TXT,或者发电子邮件等等。不过上面这些方法总觉得不直接,所以想基于P2P做一个小的局域网文件和文字传输小工具。WinForm的工程,

    2022年6月3日
    38
  • 如何完成一张机房3d效果图

    如何完成一张机房3d效果图制作机房3D效果图作者:西安曼笛文化传播有限公司     赵希希 随着信息技术的不断发展,网络的更新,平安城市的规划,大量数据中心的建设,机房监控软件也慢慢的推进,机房效果图也有很大的改进。 从cad到简易的效果图在到成熟的3d效果图.如下图1;图2;图3所示:图1图2图3现在的机房效果图不光体现整体的图形,材质,还有会体现很多细节:

    2022年6月2日
    36
  • Windows7 64位系统搭建Cocos2d-x 2.2.1最新版以及Android交叉编译环境(具体教程)

    Windows7 64位系统搭建Cocos2d-x 2.2.1最新版以及Android交叉编译环境(具体教程)

    2021年11月30日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号