腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
当针对
中断
处理程序调用bottom half时
、
、
当提到
Linux
内核
中断
处理程序时,据我所知,
中断
执行有两个阶段,第一个阶段是上半部分,第二个阶段是下半部分。 我知道上半部分将在硬件
中断
发生时立即执行,但我的疑问是下半部分何时以及如何执行?
浏览 1
提问于2013-12-07
得票数 5
1
回答
do_softirq执行时间
、
我正在尝试理解do_softirq在什么时候被调用Q1。调用它的其他地方有哪些。Q3。在高网络负载的情况下,内核如何对
软
中断
进行节流?CPU是如何处理用户
进程
的?比方说播放一个流视频。
浏览 1
提问于2014-05-05
得票数 0
2
回答
local_bh_disable、preempt_disable、local_irq_disable
、
、
、
local_bh_disable禁用对下半部分(
软
中断
)的处理。
软
中断
在
中断
返回路径上处理,或者由ksoftirqd-(每个cpu)-thread处理,如果系统遭受重的
软
中断
负载,它将被唤醒。preempt_disable禁用抢占,这意味着当线程在preempt_disable <-> preemt_enable作用域中执行时,
调度
器不会将其置于睡眠状态。这意味着,如果当前线程在该作用域内时发生系统计时器
中断
,它可能会更新
浏览 2
提问于2014-06-17
得票数 5
1
回答
模块执行上下文
、
、
我在
linux
中为ipsec开发模块。查看两种不同的情况,当代码从我的模块将被执行。从
进程
上下文执行:应用程序产生一些流量通过网络传输,应用程序应该调用一些syscall来传输数据,然后
进程
切换到内核空间,数据包通过
linux
的网络子系统,在这里执行我的模块,并在向网卡提供任务后全部完成所有这些步骤都是从
进程
上下文执行的,并且在任何时候
调度
程序都可以将
进程
从一个切换到另一个。如下是使用我的模块的第一个例子-来自流程上下文。从softirq上下文执行:当网卡接收数据包时,
浏览 3
提问于2017-05-10
得票数 0
回答已采纳
1
回答
系统调用是否会
中断
软
中断
?
、
根据我的理解,系统调用是在触发软件
中断
时得到服务的,所以我认为它不能
中断
硬件ISR,因为在ISR中禁用了本地CPU irq,但它看起来可以
中断
任何其他任务,如softirq、tasklet、工作队列和内核线程当系统调用在内核模式的
进程
上下文中运行时,如果它可以
中断
软
中断
,我们必须在
软
中断
中考虑到针对
进程
的适当保护。更糟糕的是,负载过重的系统调用可能会延迟
软
中断
和微线程的执行至少一段
浏览 38
提问于2017-03-02
得票数 0
3
回答
softirq和tasklet在哪个上下文中?
、
、
、
我知道有
进程
上下文和
中断
上下文,但我不明白当执行softirq或tasklet时,它在哪个上下文下运行。 我见过一些人使用术语“下半部分上下文”,如果有这样的术语,与其他术语相比有什么不同。
浏览 5
提问于2011-08-21
得票数 17
回答已采纳
1
回答
中断
处理程序和
进程
调度
程序
、
、
我知道在
Linux
内核中,当硬件
中断
发生时,会发生上下文切换。1)如果我正在执行
中断
处理程序,我的
进程
调度
器是否仍然在
调度
进程
,或者它将停止
调度
直到
中断
处理程序完成。
浏览 4
提问于2014-03-20
得票数 1
1
回答
内核不同子系统如何共享CPU时间
、
、
、
、
用户空间中的
进程
由内核
调度
程序
调度
以获得处理器时间,但是不同的内核任务是如何获得CPU时间的?我的意思是,当用户空间没有
进程
请求CPU时间时(因此CPU通过执行NOP指令空闲),但是一些内核子系统需要定期执行一些任务,计时器和其他hw和sw是否
中断
了在内核空间中获取CPU时间的常用方法?
浏览 0
提问于2014-09-11
得票数 0
回答已采纳
4
回答
一个内核怎么可能是非抢占的,并且仍然有多个控制路径?
在我不久前学过的一门操作系统课程中,我们正在开发一个旧的、非抢占性的
Linux
内核(2.4.X)。但是,我们被告知内核中可能同时存在多个控制路径。这不违背内核的非抢占性吗?上一次我试图问这个问题时,我得到了这样的回答:“嗯,
Linux
内核是抢占性的,所以没有问题”。
浏览 1
提问于2010-08-22
得票数 0
回答已采纳
2
回答
操作系统如何使
中断
的
进程
始终在指定的CPU上运行?
、
、
、
、
我知道
中断
随时可能到来,并
中断
当前
进程
上下文的执行。但我只是想知道当
中断
处理完成时,操作系统,如
Linux
,如何保持当前
中断
的
进程
仍然在这个本地CPU上运行,而不会被
调度
到其他CPU上?
浏览 1
提问于2015-11-24
得票数 2
1
回答
“过程抢占”的确切定义是什么?
、
、
、
、
抢占意味着将处理器从一个
进程
中强行拿走,并将其分配给另一个
进程
。操作系统(自我版本1.1),Sibsankar Haldar 因此,我理解的是,如果
进程
被
中断
(被硬件
中断
(即I/O
中断
或定时器
中断
)
中断
),我们有
进程
抢占()和
调度</e
浏览 1
提问于2016-04-30
得票数 11
2
回答
为什么每个线程preempt_count都足够了?
、
、
位数8- 15如果不是零,就意味着
软
数被分解了那么多次. 位16 - 27指定发生了多少次irq_enter调用。它意味着嵌套
中断
处理程序的数量。当一个新
进程
被
调度
时,偏离过程位0-7将为零,否则它意味着抢占被禁用和切换是不允许的。但是第8-27段呢?他们也是0吗?这是否意味着每当有
进程
调度
调用时,preempt_count应该是0,因此它的值不需要复制到不同
进程
的thread_info中,以便在特定的CPU上跟踪状态
软
irqs和irqs?
浏览 1
提问于2015-03-30
得票数 2
回答已采纳
2
回答
在
中断
时获取当前->pid
、
、
、
、
我正在写一些关于
linux
调度
器的东西,我需要知道在我的
中断
到来之前,哪个
进程
正在运行。当前结构是否可用?如果我在
中断
处理程序中执行current->pid,我会得到我
中断
的
进程
的pid吗?
浏览 5
提问于2012-05-13
得票数 3
回答已采纳
2
回答
中断
处理程序中的上下文切换
、
当
中断
处理程序正在执行时,为什么上下文切换不能发生?更具体地说,在
linux
内核中,
中断
处理程序在被
中断
的
进程
的上下文中运行。为什么不能在
中断
处理程序中进行上下文切换来
调度
另一个
进程
?
浏览 1
提问于2011-01-19
得票数 8
回答已采纳
2
回答
内核模式下的
Linux
进程
调度
、
以下是Wiki中引用的一些描述
Linux
内核在一定条件下提供抢占式
调度
。在内核版本2.4之前,只有
进程
是抢占性的,即除了时间量过期之外,如果较高的动态优先级
进程
进入TASK_RUNNING状态,当前
进程
在用户模式下的执行将被
中断
。对于
Linux
2.6,增加了
中断
执行内核代码的任务的能力,尽管这样并不能抢占内核代码的所有部分。那么,对于当前的
linux
内核,内核抢占是有条件的,上述语句成立吗?例如,如果一个
进程
通过
浏览 5
提问于2012-12-06
得票数 5
回答已采纳
1
回答
spin_lock期间的抢占
、
linux
内核spin_lock实现通过调用preempt_disable()禁用抢占。在我的内核配置中,没有设置CONFIG_PREEMPT。因为在
调度
期间
中断
没有被禁用,所以
中断
处理程序可以调用spin_lock ()。谁能指出
调度
器没有
调度
另一个
进程
的代码,因为它已经获得了一个spin_lock。
浏览 1
提问于2013-01-10
得票数 2
回答已采纳
4
回答
linux
下半部分如何在
中断
上下文中执行?
、
、
我的理解是:上半部分和下半部分在
中断
上下文中执行。唯一的区别是,下半部分在启用
中断
的情况下执行,而上半部分在相应的irq禁用的情况下执行(这仍然可以通过使用SA_INTERRUPT标志来克服)。现在,调用
调度
程序并执行下半部分(如果有任何挂起的部分)。既然调用了return_from_intr,那么下半部分如何在
中断
上下文中执行呢?它将处于内核模式而不是
中断
模式? 如果我错了,请纠正我。
浏览 0
提问于2012-09-04
得票数 1
1
回答
来自
linux
内核的schedule()+switch_to()函数是如何工作的?
、
我试图了解
linux
内核中的
调度
过程实际上是如何工作的。我的问题不是
调度
算法。这是关于schedule()和switch_to()函数是如何工作的。 我会尽力解释的。此标志是一条消息,即应该尽快调用计划,因为另一个
进程
应该运行。在返回用户空间或从
中断
返回时,将检查need_resched标志.如果设置了它,内核将在继续之前调用
调度
程序。看看“,第二版”一书所
基于
的内核源代码(
Linux
2.6.10-版本),我还看到一些代码可以自动调用schedule(
浏览 2
提问于2011-06-29
得票数 31
2
回答
Linux
如何处理IRQ内部对schedule()的调用?
、
、
、
我正在为我自己的小内核研究
Linux
调度
器/
进程
系统,我正在(试图)编写,但我无法理解我错过了什么。我知道我遗漏了一些东西,因为Slackware在我的计算机上运行的事实证明了
调度
器是有效的:P
浏览 0
提问于2011-11-06
得票数 2
回答已采纳
1
回答
如何在上下文切换期间保存当前上下文?
、
、
、
以下是我对
进程
切换(在amd64
Linux
中)的理解。我很困惑到底是谁拯救了
中断
过程的上下文。如果您这样做,您将失去
中断
的
进程
的程序计数器。
浏览 2
提问于2021-03-07
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux进程调度:完全公平调度器CFS
报名:《Linux任督二脉》之《进程调度》4节系列微课
linux 内核 --- 自旋锁(spinlock_t)
打通Linux任督二脉线下课程报名通知,上海-3
点个外卖,我把「软中断」搞懂了
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
云直播
活动推荐
运营活动
广告
关闭
领券