亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 4563 | 回復: 11
打印 上一主題 下一主題

如何在應用程序里訪問物理內存呢? [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2008-12-04 16:40 |只看該作者 |倒序瀏覽
如題!

比如我的物理內存地址是0x30000000開始,我想在應用程序里訪問這段地址,我該怎么做??
goole了一下,給的都是
/**********************************/
int fd=0;
char *mem=null;
int size = 1000;

fd = open("/dev/mem", O_RDWR);

mem=(char *)mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0x30000000>>;
/*****************************************************************************/

說用這種方法就能直接訪問內存。
但是執(zhí)行open時是OK的,但是執(zhí)行mmap就不行,返回值是-1,請問是怎么回事??

還有,還有沒有其他方式能直接訪問內存呢?

高手們給講講啊……

論壇徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵節(jié)徽章
日期:2015-03-06 15:50:392015亞冠之大阪鋼巴
日期:2015-06-12 16:01:352015年中國系統(tǒng)架構師大會
日期:2015-06-29 16:11:2815-16賽季CBA聯(lián)賽之四川
日期:2018-12-17 14:10:21
2 [報告]
發(fā)表于 2008-12-04 20:16 |只看該作者
你的文件系統(tǒng)是什么的?
是在PC機上作的實驗嗎?
還是在開發(fā)板上做的?

[ 本帖最后由 T-bagwell 于 2008-12-4 20:17 編輯 ]

論壇徽章:
0
3 [報告]
發(fā)表于 2008-12-04 23:44 |只看該作者
好像不能直接訪問物理內存吧?只有操作系統(tǒng)內核才能這么做,否則就沒有內存管理的必要了。
當然如果是設備的地址空間通過地址映射是可以訪問的

論壇徽章:
0
4 [報告]
發(fā)表于 2008-12-05 12:38 |只看該作者

回復 #2 T-bagwell 的帖子

是板子上

論壇徽章:
0
5 [報告]
發(fā)表于 2008-12-05 12:45 |只看該作者

回復 #3 emmoblin 的帖子

其實我的本意也不是想直接訪問,畢竟不太合乎規(guī)則。

我在做一個camera采集和播放的測試代碼,系統(tǒng)把ram最后一部分留出幾M給采集的視頻數據放,且這部分空間沒有接收內存管理(free命令得到的內存總量就不包含這部分空間)。

我應該怎么獲得那片區(qū)域的映射呢?

論壇徽章:
0
6 [報告]
發(fā)表于 2008-12-05 14:37 |只看該作者

回復 #5 fishrei 的帖子

你這個是什么的板子?

[ 本帖最后由 xiangyu1986 于 2008-12-5 14:52 編輯 ]

論壇徽章:
0
7 [報告]
發(fā)表于 2008-12-05 14:59 |只看該作者

回復 #5 fishrei 的帖子

你可以把errno打出來看看吧
用perror看看到底是為什么不能映射這段內存

論壇徽章:
0
8 [報告]
發(fā)表于 2008-12-05 15:00 |只看該作者

回復 #6 xiangyu1986 的帖子

/dev/mem是內存設備,是針對我訪問內存的提問使用的,對camera則是/dev/video設備。
跟framebuffer不一樣,打開framebuffer設備以后,我可以使用mmap可以獲得顯示區(qū)域的那片映射,望映射地址寫數據,可以在屏上顯示。
而針對camera設備,好像不能夠用mmap來獲取camera采集數據的那片空間,所以想直接去讀內存。

但是好像那部分空間被放在內存管理以外了,即是說/proc/meminfo里,內存那部分不包括這段地址,而且這段地址也沒有出現(xiàn)在該文件里。

還在看,不知道怎么回事??

有知道的哥們給指導一下……

論壇徽章:
0
9 [報告]
發(fā)表于 2008-12-05 15:14 |只看該作者

回復 #8 fishrei 的帖子

是不是因為你這部分存儲空間還沒有掛載到系統(tǒng)上去??

論壇徽章:
0
10 [報告]
發(fā)表于 2008-12-05 15:24 |只看該作者

回復 #8 fishrei 的帖子

那你這里是i/o空間的訪問啊
應該是做ioremap才對吧
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP