腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
Linux
内核ARM转换表库(TTB0和TTB1)
、
、
编译的
Linux
kernel 2.6.34.3 for ARMv7 (Cortex-a8) 我
查看
了内核代码,发现
Linux
内核为TTB1 (转换表基)上的内核地址空间(大于0xC0000000的所有内容)和ttb0 (低于0xC0000000的所有内容)上的用户进程设置了
硬件
页表,每次进程上下文切换时,这些页表都会发生变化。我读到TTBCR (转换表基址控制
寄存器
)决定在未找到MVA时遍历哪个ttb
寄存器
,但该
寄存器
始终读0,这意味着在ARM架构参考手册中始终使用T
浏览 6
提问于2013-01-22
得票数 11
回答已采纳
1
回答
内存分段是否在64位
Linux
内核的最新版本中实现?
、
、
AMD64体系结构程序员手册第2卷指出,大多数现代系统软件绕过
硬件
特性进行内存分段,因为结合软件和
硬件
分页支持来处理内存隔离和重新定位通常更有效(修订3.23,第65页,第3段)。下面,手册指出,在64位(长)模式下,仍然使用一些段
寄存器
(系统段
寄存器
).1)在AMD64 64的64位(长)模式下运行?这些系统段
寄存器
有什么用途吗?
浏览 3
提问于2014-11-12
得票数 3
回答已采纳
1
回答
在
Linux
2.6中用switch_to()保存通用
寄存器
、
、
、
我在链接switch_to中的文章“
Linux
中x86上下文切换的演变”中看到了的代码。大多数版本的switch_to只保存/恢复ESP/RSP和/或EBP/RBP,而不是内联asm中其他保持调用的
寄存器
。但是
Linux
2.2.0版本确实将它们保存在这个函数中,因为它使用的是软件上下文切换,而不是依赖于
硬件
TSS。后来的
Linux
版本仍然进行软件上下文切换,但是没有这些push / pop指令。
寄存器
是否保存在其他函数中(可能保存在sch
浏览 1
提问于2019-05-31
得票数 3
回答已采纳
1
回答
如何追踪DMA?
、
、
现在,我通过
查看
库中的几个函数来做到这一点:dma_wait,它通过不断检查DMA_DESC_ENABLE
寄存器
的值来等待事务完成。
Linux
或
硬件
本身的一些东西将是最好的。 我知道原则上这是一个累赘的情况。DMA的思想是
硬件
( PCI卡或主板上的DMA控制器)将东西直接复制到进程的内存中,绕过CPU和OS。另一个想法是,是否
浏览 0
提问于2020-08-14
得票数 5
回答已采纳
1
回答
在
linux
下配置i2c总线上的图像传感器
、
、
、
、
我需要配置位于i2c-2总线上的图像传感器的
寄存器
(
寄存器
地址- 16位)。我使用的是i2ctools命令(i2cset、i2cget等)从命令行配置其他
硬件
设备(
寄存器
地址-8位)。i2ctools仅允许范围为0x00到0xFF的
寄存器
地址。 没有人可以建议任何替代方法来配置此图像传感器。我只需要配置板上的
寄存器
启动(一次初始化)。我在我的主板上使用yocto构建的
linux
。如果只是启动后的一次要求,那么配置任何
硬件
设备的
寄存器
的
浏览 2
提问于2018-10-12
得票数 0
2
回答
内存段是否由操作系统或体系结构定义?
、
、
x86体系结构具有用于地址空间(ss、ds等)的各个段的段
寄存器
。如果我想在一个进程地址空间中添加一个新的内存段,我可以通过修改内核来完成吗?或者我需要
硬件
支持吗?我不想做任何具体的事情,只是好奇并试图理解
Linux
是如何使用段
寄存器
的。
浏览 8
提问于2018-07-04
得票数 0
1
回答
ARM MMU和ARM
Linux
页表漫游
、
、
我对
linux
如何利用ARMv7内存管理单元
硬件
来实现它的3级页表遍历有点困惑。MMU只有2个
寄存器
ttbr0和ttbr1 (一个用于内核,另一个用于用户空间)。mmu如何知道
linux
的多级页表漫游? 谢谢,Hvr
浏览 0
提问于2015-01-19
得票数 1
1
回答
观察
Linux
内核中变量(内存地址)的变化,并在变化时打印堆栈跟踪?
、
我想以某种方式“观察”
Linux
内核(确切地说,是内核模块/驱动程序)中的一个变量(或者更确切地说,是一个内存地址);并找出是什么改变了它-基本上,当变量发生变化时打印出堆栈跟踪。现在,我知道我可以使用kgdb连接到运行在虚拟机中的调试
Linux
内核,甚至可以像这样设置断点(所以希望还有观察点)-但问题是我实际上想调试一个ALSA驱动程序,特别是播放dma_area缓冲区(我在那里得到了一些意外的数据所以我的问题是:
Linux
内核中是否存在这样的调试技术? 如果不能:是否可以设置一个
硬件
(或软件)中断,该中断对
浏览 2
提问于2013-11-01
得票数 7
回答已采纳
1
回答
如何监控在gdb中设置监视点所需的资源?
、
、
、
在x86上,GDB使用一些特殊的
硬件
资源(调试
寄存器
?)设置监视点。在某些情况下,当没有足够的资源时,GDB将设置监视点,但它无法工作。是否有任何方法以编程方式监视
Linux
上这些资源的可用性?来自gdb内部的:“由于它们依赖于
硬件
资源,
硬件
断点的数量可能有限;当用户要求更多时,gdb将开始尝试设置软件断点。(在某些体系结构上,特别是32位x86平台上,gdb并不总是知道是否有足够的
硬件
资源来插入所有的
硬件
断点和监视点。在这些平台上,GDB只在程序继续调试时打印错误消息
浏览 1
提问于2011-10-24
得票数 2
1
回答
程序集引导加载程序在虚拟PC上工作,而不是在真实PC上工作
、
、
、
我的代码在virtualbox中运行得很好,但在真正的PC上启动时就不行了(从USB笔式驱动器启动,BIOS将其检测为USB硬盘驱动器)。在我的真实PC上,它成功地将正确的字节打印到屏幕上(所以显然是正确地读取磁盘,并将其写入内存中的预期位置),但随后在该点停止执行,而不是跳转。ORG 0x7C00; mov bx , 0x1000
浏览 0
提问于2013-03-25
得票数 3
回答已采纳
2
回答
如何在
Linux
应用程序中使用C++中的终端输入中断循环/进程
、
、
我正在编写一个
Linux
命令行应用程序,它最终会导致从
硬件
中获取数据。数据采集的本质是,它将始终以某种定义的数据速率向程序提供数据。另外,我知道,在使用嵌入式设备时,您只需检查
寄存器
,
查看
缓冲区是否增加,并使用它来确定是否从缓冲区读取。在
Linux
应用程序上,我没有那种奢侈(或者说我有吗?)我不能简单地使用SIGINT,因为我需要向
硬件
发送信号以停止数据采集,并向记录的数据添加一个标头。需要有一个信号来阻止收购。
浏览 3
提问于2014-10-08
得票数 1
回答已采纳
1
回答
在多功能ARM最新内核中实现putc -4.6
、
、
、
我想了解
linux
如何打印消息,甚至在它解压缩自己在ARM通用的Boad。从这个中,函数decompress_kernel是通过putstr()函数来写入消息,这个函数反过来又具有写到
硬件
寄存器
uart的putc函数。putc是在文件中实现的,putc直接写到AMBA_UART_DR
寄存器
,这些
寄存器
在不同的体系结构中是不同的,在不同的芯片上也是不同的。 但
浏览 6
提问于2016-04-21
得票数 1
回答已采纳
5
回答
用来读取设备
寄存器
的Shell命令?
、
、
在运行
Linux
的单板计算机上,有办法读取控制
硬件
的设备配置
寄存器
的内容吗?我认为它将是inw()的包装。 我正在寻找类似于used内存转储(md)命令的东西,用于驱动程序调试的上下文中。
浏览 0
提问于2010-12-17
得票数 19
2
回答
GMA 950
硬件
的
寄存器
级编程
、
、
、
我正在尝试为GMA 950
硬件
编写一个基本的驱动程序。我一直在找一份数据表或一些编程指南,但什么也找不到。我也看过
Linux
和FreeBSD源代码,但它们都很大,理解起来需要时间。有没有人知道我可以为950和/或945编写
硬件
寄存器
级代码的好文档? 谢谢,FM
浏览 4
提问于2009-04-04
得票数 0
回答已采纳
2
回答
“
硬件
寄存器
设置”在ACPI中是什么意思?
、
、
、
该框架建立了
硬件
寄存器
集,用于定义功率状态(睡眠、休眠、唤醒等),
硬件
寄存器
集能够适应专用
硬件
和通用
硬件
上的操作。 我不太明白关于
寄存器
集的粗体部分。我目前的理解是,平台上的所有设备都有自己的
寄存器
来提供可控性。ACPI是否从所有设备收集所有
寄存器
,并使用这些
寄存器
的状态来描述/控制平台?换句话说,ACPI将平台看作是一组
寄存器
。
浏览 2
提问于2016-08-11
得票数 0
回答已采纳
1
回答
/proc/io*是如何居住的?
、
、
因此,如果我正确理解,cat /proc/iomem列出了映射到这个和那个设备
寄存器
的内存地址,类似于ioports。如果您拿起一些关于
Linux
设备驱动程序的书,它将说明iomem由调用request_region()的驱动程序填充,或者类似的内容。 但是设备驱动程序是如何知道
硬件
寄存器
在哪里的呢?例如,对于大多数人来说,rtc0似乎占据着0070:0071 --
Linux
/设备驱动程序如何知道我的系统中的晶体管和电线是连接在一起的,从而使翻转这些位正好对应于读取RTC的信
浏览 1
提问于2017-05-03
得票数 0
回答已采纳
3
回答
指针如何允许
硬件
访问?
、
、
但是使用指针怎么能让你访问
硬件
呢? 我的想法是将指针的值设置为
硬件
的相关对象,然后通过指针对其进行操作。但是,如果您已经有足够的权限访问
硬件
的对象和属性,可以在其上使用指针,那么指针在哪里起作用呢?一个基本的例子,以及为什么需要指针来操作该
硬件
属性的解释将是很好的。
浏览 0
提问于2013-06-21
得票数 9
回答已采纳
3
回答
编辑bios以允许更快的键盘读取
、
、
我们有一个
linux
应用程序,它取决于用户按某些键的速度。这是一项人类性能测试。如果可能的话,我们希望能够在任何机器上做到这一点。
浏览 6
提问于2009-08-26
得票数 0
回答已采纳
1
回答
在自定义
硬件
上映射内存
、
、
、
我刚开始使用mmap和映射
硬件
寄存器
,可能问题很简单。所以,我的问题是我们有一些定制的
硬件
,它有32位
寄存器
。其中一个要求是我必须使用mmap来确保快速的IO操作。我使用的是c++和
Linux
。
浏览 2
提问于2014-09-18
得票数 0
1
回答
Linux
内核是通过BIOS访问HW,还是直接与HW接口?
、
、
当BIOS完成HW的初始化时,它必须运行一些例程(即设置适当的
寄存器
位、延迟等.)。我要问的问题是,这些BIOS例程是否是:另外,BIOS是用汇编语言编写的还是某种
硬件
定义的语言?
浏览 0
提问于2021-06-09
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux查看日志
Linux下查看CPU信息
Linux 查看 SELinux 的状态
linux 基本日志查看命令
Linux查看文件类型命令实验
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券