腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
如何访问
内核
空间中的物理
地址
、
、
如何使用
内核
直接修改内存块
地址
中的数据在旧版本(X86_64)中,我使用
mmap
映射/ dev / mem,但它在arm64中不起作用 #ifdef
MMAP
_INVALID_ARGUMENT /*invalid argume
浏览 9
提问于2016-06-05
得票数 1
2
回答
内存映射
内核
空间的解剖
、
、
、
我试图理解
Linux
中使用
mmap
将
内核
模式空间映射到用户模式空间的机制。下面的图片显示了我如何想象记忆的解剖结构。黑色箭头现在指向物理
地址
。
浏览 2
提问于2016-03-28
得票数 7
2
回答
mmap
的大小限制是多少?
、
我使用
mmap
()将共享内存对象映射到进程。我的问题有两部分:所使用的
linux
内核
是2.6.27。共享内存对象的大小约为32 is。我试图访问这样的共享内存对象由于没有足够的虚拟
地址
空间而导致
mmap
()失败的可能性。
浏览 6
提问于2012-10-29
得票数 5
1
回答
让用户读写物理
地址
的dma_common_
mmap
文档
、
、
我正在尝试编写一个
Linux
内核
模块,以便使用dma_common_
mmap
()将一些
地址
映射回用户。然后,我希望用户映射并写入/读取
地址
空间。我现在的主要问题是我找不到dma_common_
mmap
()的文档,有吗?我已经搜索过,但没有找到如何使用它,并让用户读/写
地址
。
浏览 22
提问于2016-06-07
得票数 1
回答已采纳
2
回答
Perf中确定库装入
地址
的机制
、
、
、
、
在后处理期间,perf如何确定每个已加载映像(例如,共享库)的加载
地址
。例如,perf report使用此信息使每个符号
地址
相对于每个已加载图像的开头。
浏览 31
提问于2020-01-13
得票数 2
回答已采纳
1
回答
更改
内核
开始
地址
后
mmap
失败
、
、
我在PowerPC p4080DS CPU和外部GPU上使用
Linux
32位v4.1.8。到目前为止,通过“常规”(一些预定义的设置和设备树),我成功地在CPU和GPU之间创建了一个共享内存区域。由于某些原因,我将
Linux
内核
的起始
地址
从0xc0000000改为0x80000000,并将lowmemsize从0x30000000改为0x60000000 (page_offset = 0x80000000, user task_size = 0x80000000 , lowmemsize = 0x60000000),现在
浏览 16
提问于2019-10-22
得票数 0
1
回答
相当于
Linux
中的dwAllocationGranularity?
、
、
、
、
在
Linux
中,什么是?在Windows中,它被定义为: 请注意,这与PAGE_SIZE不同,后者是物理页面的粒度。(在Windows上,x86上的虚拟
地址
粒度是64 KiB,而页面大小当然是4 KiB)。
浏览 3
提问于2014-07-18
得票数 3
回答已采纳
1
回答
Linux
内核
flush_cache_range()调用似乎什么也没做。
、
、
、
这个物理
地址
对于
Linux
用户模式代码来说也是已知的,它使用它(在用户模式下)调用
mmap
() API来获取指向这个内存区域的用户模式指针。然后,我们的
Linux
内核
驱动程序会在驱动程序的file_operations结构中看到对其
mmap
例程的相应调用。当用户模式代码接收到新数据已经DMA到这个内存
地址
的信号时,它需要通过上面提到的
mmap
()调用获得的用户模式指针从用户模式访问它。
mmap
例程被调用时捕获的"vma“,&
浏览 6
提问于2013-06-05
得票数 3
1
回答
使用
mmap
保留
地址
空间的开销
我有一个程序,它通常使用大量的数组,其中的内存是使用
mmap
分配的 有人知道在提交内存之前大量分配
地址
空间的典型开销吗?无论是使用MAP_NORESERVE分配还是使用稀疏文件备份空间?
浏览 3
提问于2013-02-13
得票数 2
回答已采纳
1
回答
Linux
:用于非常规文件的
mmap
()
、
、
我知道
mmap
()允许应用程序将文件映射到内存中,因此内存
地址
和文件中的单词之间存在一对一的对应关系。 但我的问题是,如果文件是由设备驱动程序创建的非常规文件怎么办?据我所知,一些非常规文件是
mmap
可映射的,有些则不是。从编程的角度来看,这意味着什么?如果我希望我的非常规文件是
mmap
-able,我应该怎么做?
浏览 1
提问于2014-01-21
得票数 2
1
回答
内核
线程的代码段
、
有没有办法获得
linux
内核
线程的
地址
和代码段的大小(就像task_struct->mm != 0的活动任务的task_struct->mm->
mmap
->vm_start和vm_end )?
浏览 3
提问于2013-01-31
得票数 1
1
回答
为什么
Linux
不支持
mmap
的路径?
mmap
syscall需要一个fd作为参数,但是当关闭fd时,
mmap
仍然在进程的内存
地址
空间中。因此,保持
mmap
不需要打开的fd,那么为什么
Linux
只支持使用fd创建文件的
mmap
,而不支持使用文件名路径创建
mmap
呢?如果
mmap
创建了对该文件的额外引用,那么为什么我们不能拥有一个mmapat,它在第一次创建这样的引用时没有获得流程的fd,然后在稍后发布它。在
Linux
内核
上没有这样的syscall,有什么
浏览 0
提问于2019-02-02
得票数 2
1
回答
Android应用虚拟内存空间布局问题
、
、
、
我有一个在Android8.1上运行的64位应用程序,在docker容器中运行,系统信息:cpu: arm6412c00000-12dc0000 rw-p 00000000
浏览 12
提问于2020-12-24
得票数 0
1
回答
如何在
内核
模块中使用do_
mmap
()
、
、
、
我想在
内核
模块中使用do_
mmap
()。根据的说法,这应该是可能的。下面是一个最小的不工作示例:#include <
linux
/mm.h> do_
mmap
(0, 0, 0, 0, 0, 0, 0, 0, 0);}
浏览 2
提问于2019-03-23
得票数 5
回答已采纳
1
回答
为什么我无法在0x201.000以下加载可执行文件(在
linux
进程中,哪个线性
地址
空间是可用的?它在哪里被记录?)
、
、
我在
Linux
3.16.0-29-泛型上使用gcc。我成功地指示gcc编译器将我正在编译的代码的加载
地址
设置为0x201.000,使用gcc -Wl,--section-start=.text=0x201000选项(似乎ELF的头部需要0x1000,所以我不能低于相反,在其他测试中使用
mmap
时,我也能够分配较低的
地址
,例如有时0x10.000从0x0.000到0xF.000,以及所有其他
地址
(直到或超过0x800.000 )。因此,我从OS用户的角度问,哪个
地址
可以用于一般进程,为什么
浏览 1
提问于2015-01-20
得票数 0
回答已采纳
2
回答
在不使用ioremap或
mmap
的情况下写入
linux
内核
中的可缓存物理
地址
、
、
我正在更改
linux
内核
调度程序,以便在已知的物理内存位置打印下一个进程的pid。
mmap
用于用户空间程序,而我读到ioremap将页面标记为不可缓存,这会减慢程序的执行速度。PS:我在qemu上运行这个
linux
内核
。qemu将使用物理
地址
来读取来宾
内核
发送的信息。写入已知的io端口是不可行的,因为每当存在对该设备的访问时,将调用支持该io设备的设备代码。编辑:我希望pid的物理
地址
位置是安全的。如何确保
内核
正在使用的物理
地
浏览 4
提问于2012-02-08
得票数 0
回答已采纳
2
回答
在
linux
中分配物理内存缓冲区
、
我有一个SoC,上面同时有DSP和ARM
内核
,我想创建一段共享内存,我的用户空间软件和DSP软件都可以访问。在
Linux
中,像这样分配缓冲区的最佳方式是什么?这里有一些背景知识,现在我有一个
内核
模块,在这个模块中,我使用kmalloc()来获取
内核
缓冲区,然后使用asm/page.h中的__pa()宏来获取
内核
缓冲区的物理
地址
。我将此
地址
保存为sysfs条目,以便我的用户空间代码可以获得此缓冲区的物理
地址
。然后我可以将这个
地址</em
浏览 0
提问于2014-09-18
得票数 1
3
回答
如果ASLR被禁用,
mmap
是否具有确定性?
、
、
、
、
如果
地址
空间布局随机化(ASLR)被禁用,我们会有一个确定性的
mmap
吗?所谓确定性,我的意思是,如果我用相同的输入一次又一次地运行同一个应用程序,我会得到由
mmap
返回的相同
地址
吗?
浏览 1
提问于2012-01-14
得票数 7
回答已采纳
1
回答
vmalloc()返回的
地址
是PAGE_SIZE的倍数吗?
、
、
根据来自的kernel.org,它说: 以下是我的想法:void *
mmap
(void *addr, size_t length, int prot, int flags,上面还写
浏览 3
提问于2021-07-18
得票数 2
回答已采纳
1
回答
为什么
Linux
很弱?
、
维基百科说,
Linux
内核
默认有一个ASLR的弱形式,只有添加PaX或Exec补丁才能实现完整的PaX。
Linux
内核
中默认的ASLR的缺点是什么?它在最近的版本中有修正/改进吗?如果没有,那么为什么主线
内核
选择不提供一个完整的实现呢?
浏览 0
提问于2016-09-07
得票数 4
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux内存映射mmap原理分析
Linux内核解读
Linux内核出现漏洞
Linux 内核原子操作
Windows 内核和 Linux 内核的区别(二)
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券