在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

搶占式內核

嵌入式應用開發 ? 來源:嵌入式應用開發 ? 作者:嵌入式應用開發 ? 2022-09-29 18:40 ? 次閱讀

μC/OS、RTT等大多數實時內核都是搶占式的,準備運行的最高優先級任務始終被賦予 CPU 控制權。

當一個任務使更高優先級的任務準備好運行時,當前任務被搶占(掛起)并且更高優先級的任務立即獲得 CPU 的控制權。

如果 ISR 使更高優先級的任務準備就緒,當 ISR 完成時,被中斷的任務被掛起并恢復新的更高優先級任務。

poYBAGM1dd6AGl4QAAFO_HeIp_U136.png

(1) 任務正在執行但被中斷。(2) 如果中斷被使能,CPU 向量(跳轉)到 ISR。(3) ISR 處理事件并使更高優先級的任務準備好運行。ISR 完成后,調用內核提供的服務(即調用內核提供的函數)。(4) & (5) 該函數知道一個更重要的任務已經準備好運行,因此內核將執行上下文切換并執行更重要的代碼而不是返回到被中斷的任務任務。當更重要的任務完成時,內核提供的另一個函數被調用,讓任務進入休眠狀態,等待事件(即 ISR)發生。(6) & (7) 然后內核“看到”需要執行一個較低優先級的任務,并完成另一個上下文切換以恢復被中斷任務的執行。

使用搶占式內核,最高優先級任務的執行是確定性的;你可以確定它何時可以控制 CPU。因此,通過使用搶占式內核可以最大限度地減少任務級響應時間。

使用搶占式內核的應用程序代碼不應使用不可重入函數,除非通過使用互斥信號量確保對這些函數的獨占訪問,因為低優先級和高優先級任務都可以使用公共函數。如果較高優先級的任務搶占正在使用該功能的較低優先級的任務,則可能會發生數據損壞。

總而言之,搶占式內核始終執行準備運行的最高優先級任務。中斷搶占任務,完成 ISR 后,內核將繼續執行準備運行的最高優先級任務(而不是被中斷的任務)。任務級別的響應是最佳的和確定性的,當系統響應性很重要時,建議使用搶占式內核。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 內核
    +關注

    關注

    3

    文章

    1382

    瀏覽量

    40434
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10907

    瀏覽量

    213062
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62984
  • RTT
    RTT
    +關注

    關注

    0

    文章

    65

    瀏覽量

    17222
  • ISR
    ISR
    +關注

    關注

    0

    文章

    38

    瀏覽量

    14471
收藏 人收藏

    評論

    相關推薦

    嵌入學習-飛凌嵌入ElfBoard ELF 1板卡-Linux內核移植之內核簡介

    學到本章節,大家應該對Linux操作系統都有了一定的了解,但可能還不知道我們拿到手的內核源碼都經歷了什么。linux有一個龐大的開源社區,每個人都可以向開源社區提交代碼。由于linux內核十分龐大
    發表于 12-16 13:08

    飛凌嵌入ElfBoard ELF 1板卡-Linux內核移植之內核簡介

    學到本章節,大家應該對Linux操作系統都有了一定的了解,但可能還不知道我們拿到手的內核源碼都經歷了什么。linux有一個龐大的開源社區,每個人都可以向開源社區提交代碼。由于linux內核十分龐大
    發表于 12-13 09:03

    嵌入工程師都在找的【Linux內核調試技術】建議收藏!

    在嵌入系統的開發中,Linux內核調試是一個至關重要的環節。 隨著處理器技術的不斷進步和嵌入領域的蓬勃發展,掌握有效的內核調試技術成為了開發者們的一項必備技能。本文將介紹幾種常見
    發表于 11-28 15:37

    嵌入Hypervisor:架構、原理與應用 閱讀體驗 +分離內核的嵌入Hyperviso

    讀后感:分離內核與SKH架構的深刻洞察 在閱讀了關于分離內核和SKH(分離內核Hypervisor)的詳細闡述后,我深感這一技術在現代計算機系統,尤其是嵌入系統和安全關鍵系統中的重要
    的頭像 發表于 10-12 17:06 ?391次閱讀
    嵌入<b class='flag-5'>式</b>Hypervisor:架構、原理與應用 閱讀體驗 +分離<b class='flag-5'>內核</b>的嵌入<b class='flag-5'>式</b>Hyperviso

    rtthread是搶占的rtos,那么線程的timeout參數具體的作用是什么呢?

    查閱相關說明,rtthread是搶占的rtos,那么線程的timeout參數具體的作用是什么呢, 假如線程A,B的優先級分別是1和2,timeout是10ms。當線程B 在運行中,還未到timeout,此刻掛起的線程A被觸發,是直接
    發表于 09-27 08:39

    新書發布——《RT-Thread嵌入實時操作系統內核、驅動和應用開發技術》

    我們非常高興地宣布,由鄭苗秀、沈鴻飛和廖建尚編著的《RT-Thread嵌入實時操作系統內核、驅動和應用開發技術》一書正式發布。本書的編寫團隊由多位在嵌入和實時操作系統領域有著豐富經驗的專家組
    的頭像 發表于 09-03 08:06 ?737次閱讀
    新書發布——《RT-Thread嵌入<b class='flag-5'>式</b>實時操作系統<b class='flag-5'>內核</b>、驅動和應用開發技術》

    linux驅動程序如何加載進內核

    在Linux系統中,驅動程序是內核與硬件設備之間的橋梁。它們允許內核與硬件設備進行通信,從而實現對硬件設備的控制和管理。 驅動程序的編寫 驅動程序的編寫是Linux驅動開發的基礎。在編寫驅動程序之前
    的頭像 發表于 08-30 15:02 ?598次閱讀

    Linux內核測試技術

    Linux 內核是Linux操作系統的核心部分,負責管理硬件資源和提供系統調用接口。隨著 Linux 內核的不斷發展和更新,其復雜性和代碼規模也在不斷增加。因此,確保內核的穩定性和可靠性變得尤為重要
    的頭像 發表于 08-13 13:42 ?591次閱讀
    Linux<b class='flag-5'>內核</b>測試技術

    歡創播報 華為宣布鴻蒙內核已超越Linux內核

    1 華為宣布鴻蒙內核已超越Linux內核 ? 6月21日,在華為開發者大會上, HarmonyOS NEXT(鴻蒙NEXT)——真正獨立于安卓和iOS的鴻蒙操作系統,正式登場。這是HarmonyOS
    的頭像 發表于 06-27 11:30 ?908次閱讀

    系統中的latency是如何產生的

    在當今數字時代,手機已成為人們日常生活中不可或缺,多任務處理和實時響應對于用戶體驗越來越重要,搶占(preemption)機制在提升系統性能和用戶體驗方面發揮了至關重要的作用。內核搶占機制使得系統
    的頭像 發表于 06-04 09:18 ?712次閱讀
    系統中的latency是如何產生的

    實時操作系統之RT-Thread及FreeRTOS

    (RTOS),它們在設計理念、內核架構、生態系統和應用領域等方面有一些區別:內核設計:FreeRTOS的內核是基于優先級的搶占
    的頭像 發表于 05-29 08:10 ?4128次閱讀
    實時操作系統之RT-Thread及FreeRTOS

    相同的代碼,不同的工程出現定時器搶占的現象怎么解決?

    如題,相同的代碼,不同的工程出現定時器搶占的現象,事情是這樣的 ?項目功能描述:emwin作為人機交互,根據界面的輸入值,8個TIM依次輸出驅動電機,驅動方式為定時器中斷翻轉IO電平的方式
    發表于 05-15 08:27

    求助,關于stm32F4中斷優先級0無法搶占的問題求解

    使用F407遇到一個搶占優先級的問題: 現設置優先級分組 HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);也就是15個優先級分組。按照手冊說明0
    發表于 04-23 07:26

    嵌入實時操作系統優先級搶占調度機制解析

    搶占發生時,任務即使沒有完成也會被迫放棄處理器,此時任務并沒有被掛起,而是會返回就緒隊列。任務在隊列中的位置是由優先級決定的,它會在隊列中等待到下一次被調度。
    的頭像 發表于 04-05 05:22 ?2924次閱讀
    嵌入<b class='flag-5'>式</b>實時操作系統優先級<b class='flag-5'>搶占</b><b class='flag-5'>式</b>調度機制解析

    STM32F103的寄存器NVIC_IPRx搶占優先級和子優先級是怎么設置的?

    STM32F103的寄存器NVIC_IPRx有些不明白,搶占優先級和子優先級是怎么設置的? 如果,中斷分組2,搶占優先級3,子優先級3 那下面這樣寫對嗎? SCB->AIRCR|=0x05FA0500; NVIC->IP[1]|=11110000;
    發表于 03-27 07:48
    主站蜘蛛池模板: 丁香六月婷婷七月激情 | 躁天天躁中文字幕在线 | 香蕉久久夜色精品国产小说 | 日本天天射 | 久久综合亚洲 | 国产成人v爽在线免播放观看 | 亚洲精品美女久久久 | 不卡视频一区二区三区 | 视频在线二区 | 午夜爽爽爽 | 久久久一本波多野结衣 | 国产香蕉免费精品视频 | 日韩精品一卡二卡三卡四卡2021 | 久久久鲁| а8天堂资源在线官网 | 四虎网址最新 | 久久精品国产大片免费观看 | 亚洲加勒比在线 | 欧美a色| 国产女在线 | 色五五月五月开 | 亚洲色图视频在线 | 午夜精品久视频在线观看 | 在线播放一区二区精品产 | 天天天天天天干 | 午夜影院黄色片 | 黄黄网 | 欧美一区二区视频 | 亚洲成年人免费网站 | 美女视频黄色的免费 | 亚洲综合色婷婷中文字幕 | 天堂最新版免费观看 | 午夜视频免费观看 | 女a男0攻巨肉高h | 午夜激情啪啪 | 九九99久久精品午夜剧场免费 | 在线毛片网| ts人妖系列在线专区 | 亚洲九色 | 97影院午夜在线观看视频 | 久久婷婷综合中文字幕 |