腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为什么
Linux
有两个数据段,一个用于用户模式,另一个用于
内核
模式?
linux
、
linux-kernel
Linux
有(除了其他部分)一个用户数据段和一个
内核
数据段。但是
内核
数据段仍然可以从用户模式
访问
,因为用户数据段和
内核
数据段指向相同的虚拟内存地址!那么,为什么
Linux
有两个数据段,一个用于用户模式,另一个用于
内核</
浏览 0
提问于2019-04-06
得票数 3
2
回答
如何从
linux
内核
模块编写
寄存器
(cpu: ARM)
linux
、
memory
、
arm
我试图从
linux
内核
写入系统控制
寄存器
。但结果是分割错误: #define REGBASE 0x20050000 __raw_writel( 0x00000002, REGBASE + 0x0004 );如何
访问
系统控制
寄存器
所在的片上存储器?
浏览 2
提问于2013-06-05
得票数 5
1
回答
臂记忆重绘
memory-management
、
linux-kernel
、
arm
、
embedded-linux
、
mmu
我读过这样的内容,例如TEX重新映射与页面表条目的AP位一起使用以进行
访问
保护。 如果是这样的话,
linux
内核
将以何种方式使用这些。请给我一些用法。
浏览 3
提问于2012-09-10
得票数 3
2
回答
在x86 CR3的SPARC架构中,对应的
寄存器
是什么?
linux
、
assembly
、
x86
、
paging
、
sparc
我知道在x86架构中,我可以读取
内核
上下文中的CR3
寄存器
来跟随
内核
的页面目录。它们的寻呼机制是否相同?? ps。ARM呢?我有一些关于这些的文件,但我需要更多...提前谢谢你。
浏览 2
提问于2012-07-31
得票数 0
回答已采纳
2
回答
如何
访问
多核处理器上的CRx
寄存器
linux
、
cpu
我需要为系统上的所有
内核
设置CR4.MCE位(4)。我想为此编写一个
linux
内核
模块,但我不确定如何继续:如何顺序
访问
所有CR4
寄存器
?我读过英特尔手册,它们描述了初始化每个
内核
的方法,但这是在bios中完成的。有什么想法吗?
浏览 3
提问于2011-09-10
得票数 0
1
回答
不同的
Linux
设备树驱动程序应该如何共享公共
寄存器
?
linux-kernel
、
linux-device-driver
、
device-tree
我正在将
Linux
内核
移植到一个不受支持的ARM SoC平台。不幸的是,在这种SoC上,不同的外设有时会在相同的内存区域内共享或混合
寄存器
。这让我对设备树规范感到悲哀,它似乎不支持不同设备共享同一组
寄存器
或混杂在同一地址空间中的
寄存器
的概念。我在设备树上读到的各种文档都没有建议正确的方法来处理这个问题。我的简单方法是在多个驱动程序中指定相同的
寄存器
区域,对于试图映射与另一个驱动程序相同的
寄存器
区域的第二个设备,会抛出"can't request re
浏览 1
提问于2014-11-02
得票数 2
2
回答
如何获取多核PowerPC上的CPU?
linux
、
multicore
、
powerpc
我有一个多线程的应用程序,它运行在
Linux
2.6.30的8核PowerPC处理器上。我想要确定线程启动时使用的是哪个CPU。显而易见的答案是打印PID处理器ID专用
寄存器
。使用mfspr指令
访问
PID
寄存器
。我尝试在我的C程序中使用以下asm来
访问
它:问题是mfspr是一个特权指令,即使这个应用程序是以根用户身份运行的,它也会错误地显示非法指令错误虽然可以创建一个在
内核</e
浏览 2
提问于2010-10-14
得票数 3
回答已采纳
1
回答
从
内核
映射内存区域
linux-kernel
、
linux-device-driver
、
memory-mapping
、
petalinux
我有一个
寄存器
,需要从一个以上的司机
访问
。它是一个全局只读
寄存器
,驻留在FPGA空间中,
寄存器
地址通过设备树导出。
Linux
内核
版本为4.14,使用petalinux 谢谢,Ran
浏览 1
提问于2018-11-25
得票数 1
回答已采纳
2
回答
作为mmcblk
访问
CSD
寄存器
的SD卡的
Linux
设备节点
linux
、
linux-kernel
、
sd-card
、
device-name
、
device-node
我正在尝试
访问
SD卡上的CSD (卡特定数据)
寄存器
。我知道的唯一方法是让
linux
系统将其识别为mmc设备(多媒体卡?)(例如,/dev/mmcblk0)。当作为scsi磁盘挂载时,有没有办法
访问
CSD
寄存器
(卡特定数据)?谢谢。
浏览 7
提问于2014-10-08
得票数 3
1
回答
访问
IO设备的设备驱动程序能在用户模式下直接运行吗?
linux
、
drivers
我读过
Linux
中的设备驱动程序可以在用户模式下运行,也可以在
内核
模式下运行。 我还知道,IO设备的
访问
方式有两种:使用端口映射的IO或使用内存映射的IO。在端口映射的IO中,我们使用指令IN和OUT
访问
IO设备,在内存映射的IO中,IO设备的
寄存器
被映射到
内核
空间内存(因此我们可以使用
访问
内存的常规CPU指令来
访问
它们,比如mov)。现在,如果设备驱动程序不是直接
访问
IO设备,而是通过与IO设备插入的IO端口的设备驱动程序交谈(例如
浏览 0
提问于2019-03-08
得票数 0
2
回答
编译
Linux
内核
模式程序时出错
linux-kernel
、
kernel
、
kernel-mode
我希望
访问
我的ARM Cortex-A8板的一些
寄存器
,这些
寄存器
在默认情况下处于不可
访问
状态。Ubuntu9.10运行在这个板上,。因此,要
访问
它们,我必须首先更改1其他
寄存器
设置(允许
访问
寄存器
).要更改这个允许
访问
寄存器
,我发现我必须只在
内核
模式下,而不是在用户模式下进行。所以,我介绍了如何在
内核
模式下编程,并得到了这个非常棒的。我编写了这个小型的hello world程序和
浏览 10
提问于2010-07-16
得票数 0
回答已采纳
3
回答
Linux
内核
ARM转换表库(TTB0和TTB1)
linux-kernel
、
operating-system
、
arm
编译的
Linux
kernel 2.6.34.3 for ARMv7 (Cortex-a8) 我查看了
内核
代码,发现
Linux
内核
为TTB1 (转换表基)上的
内核
地址空间(大于0xC0000000的所有内容我读到TTBCR (转换表基址控制
寄存器
)决定在未找到MVA时遍历哪个ttb
寄存器
,但该
寄存器
始终读0,这意味着在ARM架构参考手册中始终使用TTBR0。那件事怎么可能?谁能给我解释一下
Linux
内核
是如何使用这两
浏览 6
提问于2013-01-22
得票数 11
回答已采纳
1
回答
在
linux
中,哪些
寄存器
不受用户空间的影响?
assembly
、
linux-kernel
、
x86
、
kernel
、
cpu-registers
如何找出哪些
寄存器
受
Linux
内核
保护,以防止用户程序集写入它们?
浏览 2
提问于2012-04-17
得票数 4
回答已采纳
1
回答
Linux
Iomem保护
memory-management
、
linux-kernel
、
linux-device-driver
我想保护对我的一个外设
寄存器
空间的
访问
。因此,任何想要
访问
的人都必须调用一个公共函数,它将提供对该内存的
访问
权限。致敬,卡尔佩什·巴夫纳
浏览 1
提问于2014-03-14
得票数 0
1
回答
在
Linux
2.6中用switch_to()保存通用
寄存器
linux-kernel
、
x86
、
low-level
、
context-switch
我在链接switch_to中的文章“
Linux
中x86上下文切换的演变”中看到了的代码。大多数版本的switch_to只保存/恢复ESP/RSP和/或EBP/RBP,而不是内联asm中其他保持调用的
寄存器
。但是
Linux
2.2.0版本确实将它们保存在这个函数中,因为它使用的是软件上下文切换,而不是依赖于硬件TSS。后来的
Linux
版本仍然进行软件上下文切换,但是没有这些push / pop指令。
寄存器
是否保存在其他函数中(可能保存在schedule()函数
浏览 1
提问于2019-05-31
得票数 3
回答已采纳
1
回答
使用r8
寄存器
作为循环计数器会产生无穷无尽的循环--为什么?
linux
、
assembly
、
x86-64
、
nasm
、
system-calls
下面的代码使用rsi
寄存器
作为循环计数器打印hello world 10次。 hello: db 'Hello world!'exit (sys_exit) int 80h;有人能解释一下吗,因为我认为这些都是通用
寄存
浏览 2
提问于2016-07-21
得票数 2
回答已采纳
1
回答
Linux
分段
linux
、
memory-management
、
linux-kernel
、
kernel
、
cpu-registers
最近,我读了一本叫做“理解
linux
内核
”的书。有句话让我很困惑。有人能给我解释一下吗?如前所述,CPU的当前特权级别指示处理器是处于用户模式还是处于
内核
模式,并由存储在cs
寄存器
中的分段选择器的RPL字段指定。每当CPL被更改时,必须相应地更新一些分段
寄存器
。例如,当CPL等于3(用户模式)时,ds
寄存器
必须包含用户数据段的分段选择器,但是当CPL等于0时,ds
寄存器
必须包含
内核
数据段的分段选择器。 ss
寄存器
也出现了类似的情况。当
浏览 0
提问于2017-08-24
得票数 2
回答已采纳
2
回答
如何在PPC上在运行时挂起syscall表?
linux-kernel
、
kernel-module
、
system-calls
、
powerpc
、
hook
主题: PPC汇编语言-
Linux
可加载
内核
模块我试图将此代码移植到用于PPC处理器
浏览 7
提问于2010-08-18
得票数 4
1
回答
系统调用是否存储在
寄存器
中?
kernel
、
system-calls
我在youtube上看到一段视频,每个
寄存器
都有系统呼叫。那么,这是否意味着系统调用存储在
寄存器
中?如果是这样的话,这怎么可能,我的意思是,它们是由控制操作系统的
内核
访问
的。那么,
内核
如何
访问
寄存器
,
内核
如何知道哪个系统调用存在于哪个
寄存器
中?
浏览 0
提问于2018-08-07
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux内核出现漏洞
Windows 内核和 Linux 内核的区别(二)
Windows 内核和 Linux 内核的区别(一)
谷歌 Linux 内核开发者使用 macOS 编译 ARM64 Linux 内核
linux系统内核简析
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券