我想写Linux用户空间中OMAP3530上的硬件寄存器.请找到下面的代码. Mmap返回错误:

内存映射失败.错误-1

mmap:权限被拒绝

#include

#include

#include

#include

#include

#include

#define BASE_ADDRESS 0x48050000

int main()

{

int mem;

unsigned int *value;

void *ptr;

/* Open /dev/mem */

if ((mem = open ("/dev/mem", O_RDONLY | O_SYNC)) == -1)

fprintf(stderr, "Cannot open /dev/mem

"), exit(1);

ptr = mmap (0, 8192, PROT_READ|PROT_WRITE, MAP_SHARED, mem, BASE_ADDRESS);

if(ptr == (void *) -1) {

printf("Memory map failed. error %i

", ptr);

perror("mmap");

}

value = (unsigned int*)(ptr + 0x4BC+((1-1)*0x90)+(0*0x04));

*value = 479*799*3-4;

printf("value = %i", value);

value = (unsigned int*)(ptr + 0x4C4+((-1)*0x90));

*value = 1;

printf("value = %i", value);

value = (unsigned int*)(ptr + 0x4C8+((-1)*0x90));

*value = 1;

printf("value = %i", value);

return 0;

}

linux用户空间寄存器,在Linux用户空间中访问硬件寄存器相关推荐

  1. 通过mem函数在MicroPython中访问模块寄存器

    简 介: 通过mem函数直接访问MCU内部的寄存器,可以完成一些在原来的MicroPython中内核没有实现的模块.通过测试可以看到,通过mem访问GPIO并没有明显增加访问的速度.使用mem访问CR ...

  2. Linux 应用程序 嵌汇编,Linux下C语言嵌汇编

    Using Assembly Language in Linux. Intel和AT&T汇编语法差异: 1.前缀: Intel汇编寄存器和立即数无需前缀.后者寄存器前缀为%,立即数前缀为$. ...

  3. linux和window时间不一致,linux时间与Windows时间不一致的解决

    转载至http://goodluck1982.blog.sohu.com/138950694.html 一.首先要弄清几个概念: 1. "系统时间"与"硬件时间" ...

  4. WINCE6.0隐藏文件夹和应用程序访问物理寄存器

    ********************************LoongEmbedded******************************** 作者:LoongEmbedded(kandi ...

  5. Linux内核源码分析—从用户空间复制数据到内核空间

    Linux内核源码分析-从用户空间复制数据到内核空间 本文主要参考<深入理解Linux内核>,结合2.6.11.1版的内核代码,分析从用户空间复制数据到内核空间函数. 1.不描述内核同步. ...

  6. 【Linux 内核】Linux 内核体系架构 ( 硬件层面 | 内核空间 | 用户空间 | 内核态与用户态切换 | 系统调用 | 体系结构抽象层 )

    文章目录 一.Linux 内核体系架构 二.内核态与用户态切换 ( 系统调用层 ) 三.体系结构抽象层 一.Linux 内核体系架构 Linux 内核最初的源码不足一万行 , 当前的 Linux 内核 ...

  7. linux数据库创建表空间语句,如何用LINUX用命令创建ORACLE数据库表空间和用户

    如何用LINUX用命令创建ORACLE数据库表空间和用户 文本模式下如何建 更新时间:2019-06-21 19:36 最满意答案 先su 到 oracle用户,SYS用户以DBA身份登陆 //创建临 ...

  8. linux 内核空间 sy,在 Linux 下用户空间与内核空间数据交换的方式,第 1 部分: 内核启动参数、模块参数与sysf...

    级别: 初级 燚 杨 (), 计算机科学硕士 2006 年 2 月 16 日 本系列文章包括两篇,它们文详细地介绍了 Linux 系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数.模块参数 ...

  9. linux里创建表空间和用户名,linux下oracle的启动和创建表空间用户

    1.进入到sqlplus启动实例 [oracle@redhat ~]$ su - oracle                                 --"切换到oracle用户& ...

最新文章

  1. 指针的底层原理与使用
  2. 阿里巴巴笔试题-马尔科夫(HMM)的特征
  3. python语言标号_Python 编码为什么那么蛋疼?
  4. Kali Linux安装谷歌输入法
  5. 听说你们想学做品牌Gif动画海报?
  6. SpringBoot+MySQL+MyBatis+Shiro+AdminLTE
  7. 实验九——基本数据类型存储及应用总结
  8. 第5章 Python 数字图像处理(DIP) - 图像复原与重建12 - 空间滤波 - 使用频率域滤波降低周期噪声 - 陷波滤波、最优陷波滤波
  9. svd medium_我们刚刚放弃了Medium博客。 您可能也应该这样做。
  10. arcgis如何打开tif_实例|ArcGiS导出的dxf,在CASS中如何变身?
  11. 装饰者模式 php,php装饰者模式简单应用案例分析
  12. Gartner:VPT技术原理 ——如何确定网络攻击面上的风险优先级
  13. EasyUi入门教程01
  14. 北京遇上西雅图之不二情书
  15. TeamViewer14检测为商业用途最优解
  16. arduino教学:红外遥控车
  17. 【布局优化】基于粒子群求解物流选址matlab源码
  18. 链接服务器“(null)“的 OLE DB 访问接口 “SQLNCLI10“ 返回了消息 “客户端无法建立
  19. Minor GC和Full GC有什么区别?
  20. 磁盘存储管理-----操作系统

热门文章

  1. PHP数组之间的比较,PHP 数组之间的比较方法:
  2. python字符串字面量有哪四种定义方式_python中字符串连接的四种方式
  3. 一篇文章搞定java序列化机制
  4. 分层架构、六边形架构、CQRS架构模式解读
  5. 对于一组给定的叶子结点_高糊图片可以做什么?Goodfellow等人用它生成一组合理图像...
  6. 3-34Pytorch与nn库
  7. 使用爬虫刷blog访问量 随机代理IP 随机user_agent
  8. Python网络爬虫使用代理proxy
  9. idea修改回默认字体,设置 IntelliJ Idea 的中英文字体
  10. python第五章课后作业_python 入门到实践第五章课后练习