腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
pthread_spinlock
是否
会
导致
从
用户
空间
切
换到
内核
空间
c++
、
linux
、
locking
、
mutex
、
atomic
我知道有很多事情
会
导致
从
用户
空间
切
换到
内核
空间
,比如malloc、ptherad_mutex_lock等。 我的问题是,如果自旋锁也
会
导致
切换,还是它会留在
用户
空间
?此外,C++11在std::atomic上也提出了同样的问题:std::atomic将留在
用户
空间
还是需要从
用户
空间
切
换到
<em
浏览 43
提问于2020-01-15
得票数 1
回答已采纳
2
回答
在什么情况下控制
从
用户
空间
传递到Linux
内核
空间
?
linux
、
linux-kernel
、
x86
我试图了解哪些事件
会
导致
从
用户
空间
到linux
内核
的转换。如果相关的话,这个问题的范围可以限制在x86/x86_64体系结构上。以下是我所知道的一些过渡的来源: 中断将
导致
上下文切换。似乎至少有一些信号是使用中断实现的,但我不知道有些信号的实现方式
是否</e
浏览 4
提问于2015-07-23
得票数 7
回答已采纳
2
回答
为什么我们需要切
换到
内核
空间
才能做到这一点?
linux
、
kernel
、
system-calls
、
hardware
、
userspace
我想知道为什么当我们想要访问硬件设备时,我们需要切
换到
内核
空间
。我知道,有时候,对于特定的操作,比如内存分配,我们需要进行系统调用,以便
从
用户
空间
切
换到
内核
空间
,因为操作系统需要组织一
切
,并在进程和它们如何使用内存和其他进程之间进行分离。
浏览 7
提问于2020-05-25
得票数 0
1
回答
从
用户
空间
轮询/选择复制到
内核
空间
linux
、
kernel
、
linux-kernel
、
select
为什么在调用轮询/选择时,我们需要将数据
从
用户
空间
复制到
内核
空间
,如果在
内核
模式下CPU可以访问
用户
空间
内存?引用Linux编程接口: 在
用户
模式下运行时,CPU只能访问标记为在
用户
空间
中的内存;试图访问
内核
空间
中的内存
会
导致
硬件异常。在
内核
模式下运行时,CPU可以访问
用户
和<em
浏览 2
提问于2016-08-31
得票数 1
回答已采纳
1
回答
内核
和
用户
空间
同步
caching
、
linux-kernel
我使用do_mmap_pgoff()和remap_pfn_range()将内存区域映射到
用户
空间
,使用ioremap()将相同的区域映射到
内核
。当我
从
用户
空间
写入这个区域,然后
从
内核
空间
读取时,我看到并不是所有的字节都被写入内存区域。 当我
从
用户
空间
写入,然后
从
用户
读取,然后
从
内核
读取,一
切
都
浏览 2
提问于2017-03-17
得票数 0
2
回答
内核
是否
仅在发生异常时执行
linux
、
linux-kernel
、
embedded-linux
、
userspace
我的理解是,当
用户
空间
应用程序正在执行时,例如,如果我们想要执行IO,则会进行系统调用,这将
导致
SW中断,通常会
导致
MCU
从
非特权模式切
换到
特权模式,并且
内核
将代表应用程序执行IO。当硬件中断发生时,我猜这会
导致
模式再次切换,并在
内核
中执行中断处理程序。 我不清楚的是,这是
内核
代码控制CPU的唯一时刻吗?例如,在只有一个
内核
的情况下,如果
用户
应用程序代码正在运行,那么
内核<
浏览 2
提问于2018-08-23
得票数 2
2
回答
为什么不为快速系统增加一倍的寄存器数量?
operating-system
、
cpu-architecture
程序应该将其在堆栈上的状态、陷阱保存到
内核
上,从而
导致
缓存和TLB失效等。2.随着新技术(如14 of )的出现,芯片上有足够的
空间
。很明显我漏掉了什么。
浏览 5
提问于2015-04-30
得票数 1
回答已采纳
1
回答
如果
内核
在处理系统调用时可以休眠,那么执行如何返回到系统调用?
kernel
、
system-calls
如果它在进程上下文中运行,它可以被唤醒并重新调度,但是
用户
进程不能在
内核
空间
中执行。
内核
是否
在调用系统调用时创建任务/进程来执行系统调用?我知道来自
用户
空间
的系统调用
会
导致
一个陷阱切
换到
内核
模式并执行相应的系统调用,但在阅读之前我假设系统调用无法休眠并被重新安排,但我理解为什么它们应该能够。
浏览 0
提问于2019-09-04
得票数 1
回答已采纳
2
回答
Linux :带指针的copy_from_user结构
linux
、
device-driver
、
kernel
我有一个结构:}; 我在
用户
空间
中初始化它,并使用'write‘函数将指向my_struct的指针传递给我的char设备。在
内核
的空格字符设备'write‘函数中,我将它从*char转换为这种结构。我使用kmalloc为结构分配了一些内存,并对其执行copy_from_user。这对于简单的“int”来说很好,但是它只复制b值的指针(地址),而不是b指向的值,所以我现在在
内核
空间
中,我正在使用一个指向
用户
浏览 0
提问于2009-11-09
得票数 10
1
回答
如何
从
内核
空间
使用KVM (
内核
基虚拟机) API?
linux-kernel
、
virtualization
、
kvm
通过使用来自
用户
空间
程序的,可以很容易地做到这一点。但是,我必须
从
内核
空间
本身来做这件事。将所需数据发送到
用户
空间
并运行
用户
空间
程序并不是一种选择。KVM提到了一种
从
内核
空间
发出ioctl调用的方法,由于 API使用ioctl调用与KVM
内核
模块交互,这似乎是一种可行的方法。但是,我无法理解这种方法,也不确定它
是否
会
以无错误的方
浏览 1
提问于2016-09-06
得票数 0
2
回答
当
从
Linux
内核
中访问
用户
空间
指针时,
内核
OOPs
会
导致
linux-kernel
这个系统包含一些自定义修改的
内核
代码,偶尔也
会
遇到
内核
oops。经过一些调试后,我们发现其中一个开发人员不理解
内核
和
用户
空间
之间的区别,他们在不使用uaccess.h中定义的函数的情况下取消引用
用户
空间
指针。此后,我修改了有问题的函数,以使用uaccess.h中定义的函数,以防止出现进一步的
内核
oops。我现在正试图验证修复
是否
成功。虽然有问题的函数不正确地使用指针,但它确实使用指针正确地修改了
用户
浏览 0
提问于2017-10-17
得票数 2
回答已采纳
2
回答
如何在execv中获取Os/161中
用户
内存地址
空间
的指针
exec
、
os161
因此,我得到了在程序和
内核
空间
的args中提供的数据user的副本。然后,我创建了一个全新的地址
空间
,带args的程序被加载到这个地址
空间
。问题是如何找到指向
用户
空间
虚拟内存的适当指针,以便在切
换到
用户
空间
之前将数据
从
内核
空间
复制到
用户
空间
?
浏览 6
提问于2009-10-26
得票数 0
2
回答
内核
模式转换
windows
如果我理解正确的话,系统
空间
中的内存添加只能从
内核
模式访问。这
是否
意味着当执行系统
空间
中映射的组件时,处理器必须切
换到
内核
模式?谢谢,苏雷什。
浏览 0
提问于2009-11-12
得票数 2
1
回答
为什么
内核
代码比
用户
代码快?
performance
、
kernel
为什么
内核
代码能够比
用户
代码运行得更快?我听说
用户
代码可以用C语言编写,
内核
代码也可以用C编写,比如Windows。那么,在
内核
模式下加快执行的原因是什么呢?
浏览 1
提问于2015-07-09
得票数 1
1
回答
上下文切换与
内核
模式
linux-kernel
、
scheduler
Linux
内核
(可能是所有UNIX
内核
?)在监督模式(也称
内核
模式)下执行,而
用户
应用程序在
用户
模式下运行;每种模式都有自己的内存
空间
。当应用程序发出syscall或被硬件中断时,Unix将执行
从
用户
模式(
用户
空间
)转移到
内核
模式(
内核
空间
)。然而,大多数技术文献都谈到上下文切换,即
内核
将执行从一个任务(进程)切
换到
另一个任务(
浏览 4
提问于2014-09-18
得票数 1
回答已采纳
2
回答
a.out中的
内核
空间
c
、
linux
、
unix
、
operating-system
我对
用户
空间
和
内核
空间
有点困惑。是
内核
空间
包含在linux中a.out的4 gb虚拟内存中,还是
内核
空间
不同并且不包含在该4 gb内存
空间
中。另外,为操作系统保留的4 gb虚拟内存部分还包括
内核
或
内核
空间
。如果以上所有关于我的概念都是错误的,请纠正我
浏览 2
提问于2012-01-17
得票数 0
回答已采纳
2
回答
如何使gdbserver接受多个连接?
gdb
、
kernel
、
qemu
、
gdbserver
我正在qemu中调试一个操作系统(
内核
+一个
用户
空间
应用程序),使用连接到gdbserver的gdb。因为我有两个二进制文件,所以我想首先用
内核
二进制连接到gdbserver,其次用
用户
空间
二进制连接,这样我就可以
从
内核
跟踪顺利地切
换到
用户
空间
跟踪。但是,似乎gdbserver不能接受多个连接。
浏览 2
提问于2015-03-06
得票数 0
回答已采纳
1
回答
如何理解'mm/usercopy.c‘中的注释
linux-kernel
如何理解Linux
内核
的mm/usercopy.c源文件中的以下注释?这实现了对CONFIG_HARDENED_USERCOPY*的各种检查,这些检查旨在保护
内核
内存不受不必要的暴露,并在许多意外情况下覆盖。 我想知道“记忆暴露”和“记忆覆盖”的确切含义。
浏览 8
提问于2019-09-20
得票数 0
回答已采纳
1
回答
程序能在
内核
模式下运行吗?
linux
根据我的理解,当中断被触发时,CPU以
内核
模式执行
内核
代码(例如:系统调用、按下键盘键等),但我想知道我们
是否
可以在
内核
模式下单独运行一个程序(不触发中断)。我的意思是:当调度程序将执行切
换到
它时,
用户
模式中的进程就会被执行,但是我们
是否
可以有调度程序将执行切
换到
的“进程”,但是这个“进程”在
内核
模式下运行(不确定我们
是否
可以将运行在
内核
模式下的程序称为“进程
浏览 0
提问于2019-03-22
得票数 4
1
回答
您能使用带/跨系统的红色区域吗?
linux
、
assembly
、
x86-64
、
system-calls
、
red-zone
考虑一下这个GNU汇编程序,它将一个字节
从
stdin复制到stdout,每个字节之间的延迟为1秒: _start:
浏览 8
提问于2022-07-03
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
零拷贝原理的文章网上满天飞,但你知道如何使用零拷贝吗?
Linux 实现原理—I/O 处理流程与优化手段
物理内存和虚拟内存区别
用户空间和内核空间
【得物技术】零拷贝
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券