腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为什么要使用这些奇怪的嵌套结构
linux
、
kernel
我试图研究
linux
内核
并阅读
内核
代码,但我不能理解他们用于页面结构的结构,如下所示:我的意思是,为什么他们使用嵌套在
union
中
的结构
中
的
union
(代码被简化了……) struct address_space *mapping;
union
{pgoff_t index; void *freelist
浏览 2
提问于2013-05-06
得票数 0
1
回答
联合在
Linux
进程描述符
中
的使用
c
、
linux
、
process
、
linux-kernel
、
unions
在阅读“理解
Linux
内核
”时,我发现联合被用于进程描述符数据结构。
union
thread_
union
{ unsigned long stack[2048]; /* 1024 for 4KBstacks */当同时使用两种数据结构时,为什么在这里使用联合
union
thread_
union
?
浏览 4
提问于2014-03-03
得票数 3
回答已采纳
1
回答
从无线设备驱动程序获取比特率的值。
linux
、
linux-device-driver
、
wireless
我正在编写一个
内核
模块,它需要从这个联合
中
读取bitrate的值:{== .......(我使用的是
linux
内核
2.6.35)
浏览 2
提问于2012-06-22
得票数 0
回答已采纳
1
回答
中断堆栈的堆栈指针
linux
、
kernel
、
interrupt
Linux
内核
对于用户模式和
内核
模式进程有独立的栈,也有一些特殊的栈。其中一个特殊的堆栈是中断堆栈,其大小为16 in,放置在irq_stack_
union
中
: char irq_stack[IRQ_STACK_SIZEIRQ_STACK_SIZE - 1,但是irq_stack_ptr的定义是: init_per_cpu_va
浏览 0
提问于2015-08-22
得票数 0
1
回答
调度上下文切换,每个进程一个或多个
内核
堆栈
linux
、
linux-kernel
、
kernel
、
scheduled-tasks
、
context-switch
考虑到
Linux
的情况,我们为每个用户堆栈都有一个
内核
堆栈,据我所知,每当发生上下文切换时,我们都会切换到当前进程的
内核
模式。在这里,我们保存当前进程的当前状态、寄存器、程序数据等,然后调度器(不确定它是否在此
内核
中
运行)保存PCB并加载下一个要调度的进程的PCB。现在,第一个问题是,考虑到每个进程也有一个“专用”
内核
堆栈的上下文切换,上面的解释对您是否有意义。 我的问题的另一部分是,如果我们对所有进程都有一个
内核
堆栈,上下文切换将如何发生?
浏览 11
提问于2017-08-16
得票数 0
1
回答
中断堆栈的堆栈指针
linux
、
stack
、
kernel
、
interrupt
Linux
内核
为用户模式进程和
内核
模式进程提供了单独的堆栈,也有一些特殊的堆栈。这种特殊堆栈之一是放置在irq_stack_
union
中
的大小为16千字节的中断堆栈 char irq_stack[IRQ_STACK_SIZE]IRQ_STACK_SIZE - 1,但是irq_stack_ptr的定义是: init_per_cpu
浏览 1
提问于2015-08-23
得票数 3
1
回答
如何在这个联合
中
访问这个比特率值?
linux-kernel
我正在编写一个
内核
模块,它需要从这个联合
中
读取bitrate的值:{ .......我使用的是
linux
内核
2.6.35
浏览 3
提问于2012-06-23
得票数 1
回答已采纳
1
回答
在DECLARE_KFIFO中使用联合的理由是什么?
c
、
linux
、
linux-kernel
、
unions
我正在查看<
linux
/kfifo.h>,特别是宏,我不知道为什么要使用
union
。[size + sizeof(struct kfifo)]; \我的问题如下: #包含<stdio.h> int main() {
union
{ int a;float b;};a= 10;} main.c:18:5: main.c:18:5:‘a’未声明(在此函数
中
首次使用如果我的内存服务正确,那么在C
中
,
浏览 1
提问于2020-05-13
得票数 1
1
回答
只有一个成员在结构内联合的目的
c
、
data-structures
、
struct
、
linux-kernel
、
unions
我在
Linux
内核
源代码
中
的纯代码中看到了这样的结构定义, (这不是唯一的地方)。似乎这是一些常见的做法): struct rdma_id_private *id_priv; structvoid *context; struct kref mcref;但是,我不知道在结构
中
只与一个成员联合的目的是什
浏览 4
提问于2020-08-03
得票数 9
2
回答
为什么取消get_user
中
的用户空间是正确的?
c
、
linux
例如,在
linux
内核
的函数SYSCALL_DEFINE2 ()
中
:{ ...
浏览 2
提问于2020-11-17
得票数 1
回答已采纳
2
回答
在这里,联合内部结构的目的是什么?
c
、
linux-kernel
typedef struct { u32 slock;#ifdef __ARMEB__} arch_spinlock_t; 上面是
Linux
内核
的代码片段,将整个联合放在结构
中
的目的是什么,为什么不简单地联合呢?
浏览 7
提问于2015-12-23
得票数 4
1
回答
struct ifreq:"
linux
/if.h“和手册页
中
的定义不同
c++
、
c
、
linux
、
network-programming
在在线手册页面
中
,ifreq结构的定义如下: char ifr_name[IFNAMSIZ]; /* Interface name */
union
{ struct sockaddr ifr_dstaddr;下面是/usr/include/
Linux
/if.h
中
的定义,我使用
浏览 3
提问于2015-10-14
得票数 9
2
回答
是否有检查
Linux
内核
版本的宏定义?
c
、
linux
、
gcc
、
macros
、
linux-kernel
我想知道是否有一个gcc宏可以告诉我
Linux
内核
版本,这样我就可以适当地设置变量类型。如果没有,我将如何定义自己的宏来实现这一点?
浏览 8
提问于2013-05-23
得票数 38
回答已采纳
3
回答
为什么在init_task引导代码__primary_switched中将sp_el0结构地址保存到sp_el0?
assembly
、
linux-kernel
、
boot
、
arm64
这是来自
linux
arm64的汇编代码(arch/ an 64/
内核
/Head.S)。(
内核
源代码5.4.21) adrp x4, init_thread_
union
-- line 1 add sp, x4, #THREAD_SIZE第1行: x4 =(init_thread_
union
的页面地址)。我发现init_thread_
union
是
内核
linkerscript<
浏览 7
提问于2020-11-29
得票数 3
回答已采纳
1
回答
是否有人使用UDP巨型图实现了解决方案?
network-programming
、
udp
我最近学到了巨型图(仅限UDP包> 65k - IPv6 )。虽然我不需要使用它们,但我想我应该深入研究一下,看看人们是如何做一些聪明的事情的。那么,是否有人使用过它们?如果使用过,又是如何使用的?哪种语言/软件/硬件支持它们?干杯
浏览 2
提问于2012-09-20
得票数 4
回答已采纳
1
回答
为什么
linux
中
的thread_info结构(X86_64)填充0?
linux
、
process
、
kernel
当我通过vmware的调试存根调试
linux
内核
进程时,我发现了一个非常奇怪的情况。我在sys_execve
中
设置了一个断点并打开了chrome,它确实中断了,但是我发现thread_info结构总是填充0。/
linux
-lts-utopic-3.16.0/fs/exec.c:1630 1630 in /build/
linux
-lts-utopic-V0z0lI/
linux
-lts-utopic-3.16.0= 0x0 &
浏览 1
提问于2016-02-26
得票数 1
回答已采纳
1
回答
如何在gdb
中
更改执行线程?
linux
、
gdb
、
kgdb
我目前正在使用KGDB调试
内核
代码。每当我闯入时,我自然会跳到kgdb的中断处理程序。在GDB下,我运行以下命令。在irq_stack_
union
()
中
4 irq_stack_
union
()
中
的线程2(k线程d) 0x0000000000000000 3 irq_stack_
union
()
中
的线程1 (
浏览 1
提问于2015-02-01
得票数 7
2
回答
linux
内核
中
的PTE结构
linux
、
linux-kernel
、
paging
我一直试图在
linux
源代码
中
查找与x86上禁用PAE的PTE系统相对应的结构/联合。到目前为止,我只在arch/x86/include/asm/page_32.h中找到了以下内容 pteval_t pte;} pte_t; 我现在有点困惑,因为在我面前打开了英特尔参考手册Vol 3A,并且该联合
中
没有任何内容与手册
中
解释的PTE
中
存在的十
浏览 1
提问于2009-09-17
得票数 3
回答已采纳
3
回答
相当于
linux
内核
中
的pthread_mutex_lock和pthread_cond_wait
c
、
linux-kernel
、
pthreads
什么等同于
linux
内核
中
的pthread_mutex_lock和pthread_cond_wait?以及如何使用它们。你能提供一些简单的例子(hello world)吗?
浏览 2
提问于2012-04-11
得票数 3
回答已采纳
1
回答
为什么sk_buff在h联合中有一个ip头指针(ipiphdr),在nh联合中有一个常规的ip报头指针(iphdr)?
c
、
sockets
、
networking
、
linux-kernel
我一直在查看
linux
网络
内核
,并注意到sk_buff在不同的联合中有两个指向ipv4头的指针。这背后的原因是什么?是否有一个数据包可能有多个ip报头的事件?00203 struct tcphdr *th;00209 unsigned char *raw;
浏览 3
提问于2017-02-10
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
MySQL中组合查询UNION和UNION ALL
Linux 内核中的 C 语言语法扩展
简单聊聊Linux内核中的Kconfig和Makefile
Linux内核出现漏洞
Windows 内核和 Linux 内核的区别(二)
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券