RCU是Linux內(nèi)核中很難的一部分,本系列文章一點一滴地來把RCU說清楚。第一次連載,是描述硬件。
2017-09-04 10:29:48
5743 
本文從硬件的角度引申出內(nèi)存屏障,這不是內(nèi)存屏障的詳盡手冊,但是相關(guān)知識對于理解RCU有所幫助。
2017-09-19 11:39:57
5926 
嵌入式系統(tǒng)Linux內(nèi)核開發(fā)工程師必須掌握的三十道題 linux內(nèi)核工程師需要知道的30個問題,看看你能回答出多少個。
2018-04-22 08:22:02
2614 
減少鎖競爭的一個有效方法是創(chuàng)建一個分級結(jié)構(gòu),如上圖所示。在此,四個rcu_node 結(jié)構(gòu)中的每一個都有各自的鎖,這樣只有 CPU 0 和 1 會獲取最左邊的 rcu_node的鎖, CPU 2 和 3 會獲取中間的rcu_node的鎖,CPU 4和5會獲取右邊的rcu_node的鎖。
2018-05-10 09:08:21
14036 
RCU(Read-Copy Update)是數(shù)據(jù)同步的一種方式,在當前的Linux內(nèi)核中發(fā)揮著重要的作用。RCU主要針對的數(shù)據(jù)對象是鏈表,目的是提高遍歷讀取數(shù)據(jù)的效率,為了達到目的使用RCU機制讀取
2020-09-25 15:10:15
1995 在linux內(nèi)核中,互斥量(mutex,即mutual exclusion)是一種保證串行化的睡眠鎖機制。和spinlock的語義類似,都是允許一個執(zhí)行線索進入臨界區(qū),不同的是當無法獲得鎖的時候
2022-05-13 08:56:26
6271 
【Linux + C語言】話說,你真的了解system接口的調(diào)用嗎?
2022-09-12 16:33:38
3449 
好久沒有更文,上次更文時西安天氣還很熱,現(xiàn)在“寒氣”它還真來了。在前一階段經(jīng)歷了一些公司的面試,經(jīng)常會問到RCU鎖的原理,其實在跟對方口述表達時才真正能體現(xiàn)出來自己到底懂不懂,關(guān)于RCU鎖的原理與使用,我打算分若干個次文章整理出來,本次就先從一個大概的原理上進行講解。
2022-10-13 16:17:27
3861 
我猜,你讀這篇文章,說明你已經(jīng)對Linux安全模塊(LSM)有所了解。如果你使用過SELinux或AppArmor,其實就已經(jīng)用過LSM了。甚至,在你使用的Linux發(fā)行版本或Android系統(tǒng)之上,也使用了LSM。
2022-11-28 09:21:41
4604 今天浩道跟大家分享linux實用場景相關(guān)的實例,助你全面了解linux相關(guān)知識。
2023-01-29 11:09:09
374 在linux內(nèi)核中,互斥量mutex是一種保證CPU串行運行的睡眠鎖機制。和spinlock類似,都是同一個時刻只有一個線程進入臨界資源,不同的是,當無法獲取鎖的時候,spinlock原地自旋,而mutex則是選擇掛起當前線程,進入阻塞狀態(tài)。所以,mutex無法在中斷上下文中使用。
2023-06-26 16:05:58
498 Linux操作系統(tǒng)是當今世界上最為廣泛使用的開源操作系統(tǒng)之一,內(nèi)核則是一個操作系統(tǒng)的核心和靈魂所在。對于一名Linux驅(qū)動開發(fā)者來說,了解Linux內(nèi)核的運行機制和Linux內(nèi)核提供的一些關(guān)鍵功能(如虛擬內(nèi)存管理、進程管理、文件系統(tǒng)、網(wǎng)絡(luò)協(xié)議棧等)都是我們?nèi)粘9ぷ骱蛯W習的重點。
2023-07-06 11:46:41
1046 
在Linux內(nèi)核中,RCU最常見的用途是替換讀寫鎖。在20世紀90年代初期,Paul在實現(xiàn)通用RCU之前,實現(xiàn)了一種輕量級的讀寫鎖。后來,為這個輕量級讀寫鎖原型所設(shè)想的每個用途,最終都使用RCU來實現(xiàn)了。
2023-12-27 09:56:44
643 
Linux 操作系統(tǒng)和驅(qū)動程序運行在內(nèi)核空間,應(yīng)用程序運行在用戶空間,兩者不能簡單地使用指針傳遞數(shù)據(jù),因為Linux使用的虛擬內(nèi)存機制,用戶空間的數(shù)據(jù)可能被換出,當內(nèi)核空間使用用戶空間指針時,對應(yīng)
2018-05-08 10:33:19
3299 
分析,我把這一類 blog 文章劃歸為“ Linux 機制分析”,希望大家支持。 什么是 workqueue ? Linux 中的 Workqueue 機制就是為了簡化內(nèi)核線程的創(chuàng)建。通過調(diào)用
2016-05-21 09:51:16
一、讓有意義的事情變的有意思二、物理內(nèi)存、虛擬內(nèi)存三、Linux 中的換頁機制一、讓有意義的事情變的有意思 昨天,看到下面這句話,送給您:讓有意思的事情變的有意義,讓有意義的事情變的有意思...
2022-01-10 07:11:27
1.1 Linux內(nèi)核模塊介紹1.1.1 Linux內(nèi)核模塊概述嵌入式設(shè)備驅(qū)動開發(fā)中將驅(qū)動程序以模塊的形式發(fā)布,更是極大地提高了設(shè)備使用的靈活性——用戶只需要拿到相關(guān)驅(qū)動模塊,再插入到用戶的內(nèi)核中
2019-10-05 20:36:18
在現(xiàn)代操作系統(tǒng)里,同一時間可能有多個內(nèi)核執(zhí)行流在執(zhí)行,因此內(nèi)核其實象多進程多線程編程一樣也需要一些同步機制來同步各執(zhí)行單元對共享數(shù)據(jù)的訪問。尤其是在多處理器系統(tǒng)上,更需要一些同步機制來同步不同處理器上的執(zhí)行單元對共享的數(shù)據(jù)的訪問。
2019-08-06 07:08:12
本文詳解了Linux內(nèi)核搶占實現(xiàn)機制。首先介紹了內(nèi)核搶占和用戶搶占的概念和區(qū)別,接著分析了不可搶占內(nèi)核的特點及實時系統(tǒng)中實現(xiàn)內(nèi)核搶占的必要性。然后分析了禁止內(nèi)核搶占的情況和內(nèi)核搶占的時機,最后介紹了實現(xiàn)搶占內(nèi)核所做的改動以及何時需要重新調(diào)度。
2019-08-05 08:18:07
的設(shè)計與實現(xiàn)》,該書為讀者快速精簡的介紹了Linux內(nèi)核的主要功能和實現(xiàn)。但不會把讀者帶入Linux內(nèi)核代碼的深淵中,是了解內(nèi)核架構(gòu)和入門Linux內(nèi)核代碼的非常好的參考書,同時該書會提高讀者對內(nèi)核代碼
2020-05-11 07:00:00
在前面的章節(jié)介紹了uboot和Linux內(nèi)核的一些相關(guān)內(nèi)容。在來看Linux內(nèi)核的大致啟動流程,Linux內(nèi)核的啟動流程要比uboot復雜的多,涉及到的內(nèi)容也更多,因此在本章節(jié)大致簡單的了解一下
2020-12-29 07:35:26
,可以了解Linux的機制了。推薦《Linux內(nèi)核設(shè)計與實現(xiàn)》Robert Love 寫的。這本書從概念上講解了Linux有什么,他們是怎么運行的。這本書要反復認真看透。
2019-07-08 06:49:08
在linux下開發(fā)過程中,用戶態(tài)需要內(nèi)核提供一些機制,以便用戶態(tài)能夠及時地得知內(nèi)核或底層硬件設(shè)備發(fā)生了什么,從而能夠更好地管理設(shè)備,給用戶提供更好的服務(wù),如 hotplug、udev 和 inotify 就是這種需求催生的。
2019-07-22 08:05:50
4、嵌入式系統(tǒng)移植Linux內(nèi)核代碼 平臺相關(guān)代碼分析ARM平臺介紹 平臺移植的關(guān)鍵技術(shù) 移植Linux內(nèi)核到 ARM平臺 了解移植的概念 能夠移植Linux內(nèi)核移植Linux2.6內(nèi)核到 ARM9
2013-02-25 09:51:20
1、了解RT-Thread內(nèi)核的啟動流程 內(nèi)核是操作系統(tǒng)最基礎(chǔ)也是最重要的部分。從本文開始進入 RT-Thread 內(nèi)核相關(guān)知識的學習。 首先了解內(nèi)核的基礎(chǔ)知識,對 RT-Thread 內(nèi)核
2022-09-05 17:01:15
博大精深的Linux內(nèi)核精確、完整地架構(gòu)展現(xiàn)在學員面前,還要教會學員如何自己獨立的在工作中如何分析、開發(fā)Linux內(nèi)核。亮點關(guān)鍵詞:嵌入式Linux內(nèi)核 / 高精度時鐘 / 修改內(nèi)核 / 掌握內(nèi)核開發(fā)能力二
2009-07-24 13:03:42
博大精深的Linux內(nèi)核精確、完整地架構(gòu)展現(xiàn)在學員面前,還要教會學員如何自己獨立的在工作中如何分析、開發(fā)Linux內(nèi)核。亮點關(guān)鍵詞:嵌入式Linux內(nèi)核 / 高精度時鐘 / 修改內(nèi)核 / 掌握內(nèi)核開發(fā)能力二
2009-07-24 13:04:45
1.3 本章小結(jié)1.4 習題第2章 Linux內(nèi)核體系結(jié)構(gòu)2.1 Linux內(nèi)核模試和體系結(jié)構(gòu)2.2 Linrx中斷機制2.3 Linrx系統(tǒng)定時2.4 Linrx內(nèi)核進程控制2.4.1任務(wù)數(shù)據(jù)結(jié)構(gòu)
2015-09-11 22:25:28
的挑戰(zhàn),為了解決這個問題,Linux內(nèi)核引入內(nèi)核模塊機制,通過動態(tài)加載內(nèi)核模塊,從而實現(xiàn)在運行過程中擴展內(nèi)核的功能。內(nèi)核模塊是什么?1 內(nèi)核模塊是一種沒有經(jīng)過鏈接,不能獨立運行的目標文件,是在內(nèi)核空間
2019-07-16 07:00:00
根本都不知道這個佛是哪一路神仙。 那今天我們就先帶大家來深入了解下嵌入式開發(fā)中至關(guān)重要的一環(huán):linux驅(qū)動。 在學習驅(qū)動之前,我們首先來了解下操作系統(tǒng)。 # 操作系統(tǒng)OPERATING SYSTEM
2020-04-15 09:59:21
這一段時間一直在學習LINUX內(nèi)核,關(guān)于進程的知識了解不是很多,打攪有了解神的,我們討論一下
2013-10-19 15:07:07
在上了Linux內(nèi)核這門課后,我對Linux內(nèi)核開始有了初步的了解,關(guān)于Linux內(nèi)核,我覺得最重要的部分還是進程的創(chuàng)建以及切換,這是整個內(nèi)核的核心部分。以下是一些我在學習Linux內(nèi)核過程中的總結(jié):
2019-07-12 07:27:28
學習ARM該怎么開始,了解了結(jié)構(gòu)后該怎么做,有的說買塊開發(fā)板,關(guān)鍵買了開發(fā)板后又怎么樣呢?不買它就不能很好的理解嗎?說嵌入式系統(tǒng)那有的要求C語言開發(fā)又是什么意思?菜鳥啊!真迷茫。求高手點播
2013-09-12 16:49:44
我專業(yè)是電子信息工程,在初入大學的時候,我們的班主任便要我們多多去了解一些關(guān)于電子方面的知識。后來我了解到了嵌入式,繼而了解到了嵌入式Linux。其實我們學習linux差不多就學習linux內(nèi)核
2021-11-05 09:05:08
PS: 本文轉(zhuǎn)載于網(wǎng)絡(luò),具體出處不明。為了方便廣大嵌入式 Linux 初學者快速了解和入門,同時也記錄一下,故轉(zhuǎn)載原文,僅用于學習和交流,感謝原作者!從上圖可以知道:① 組成:嵌入式Linux系統(tǒng)
2021-11-05 06:12:28
1.嵌入式Linux驅(qū)動程序開發(fā)嵌入式Linux驅(qū)動程序開發(fā)包羅萬象,基本上每個點都要大概了解一下。1.1軟件工具Makefile必須要掌握一些,至于Kconfig太簡單了只是個配置文件算不上程序
2021-11-02 10:17:37
中斷的實現(xiàn)機制,tasklet與workqueue的區(qū)別及底層實現(xiàn)區(qū)別?為什么要區(qū)分上半部和下半部linux中斷的響應(yīng)執(zhí)行流程linux中的同步機制?spinlock與信號量的區(qū)別linux中RCU原理??見之前Linux部分Linux設(shè)備中字符設(shè)備與塊設(shè)備有什么主要的區(qū)別?請分別列舉一些實際的設(shè)
2021-12-24 06:23:43
是內(nèi)核空間,Linux 內(nèi)核正是位于這里。GNU C Library (glibc)也在這里。它提供了連接內(nèi)核的系統(tǒng)調(diào)用接口,還提供了在用戶空間應(yīng)用程序和內(nèi)核之間進行轉(zhuǎn)換的機制。這點非常重要,因為內(nèi)核
2018-08-27 10:31:28
在了解了嵌入式開發(fā)的基本概念之后,本章主要學習如何搭建嵌入式Linux開發(fā)的環(huán)境,通過本章的學習,讀者能夠掌握以下內(nèi)容。掌握嵌入式交叉編譯環(huán)境的搭建、掌握嵌入式主機通信環(huán)境的配置、學會使用交叉編譯
2018-05-31 22:34:35
你好 是否可以通過SPAEr320 CPU中的USB啟動機制啟動Linux內(nèi)核? 如果是,可以使用哪些工具為可啟動USB記憶棒生成圖像?我希望至少能夠獲得一份認可的應(yīng)用說明鏈接。 謝謝 亨氏 #USB啟動
2019-08-07 14:23:28
本帖最后由 lee_st 于 2018-2-24 19:52 編輯
深入Linux設(shè)備驅(qū)動程序內(nèi)核機制
2018-02-24 17:19:33
Factory是UVM世界中承載著對象實例化和重載(override)等作用的重要機制。深入了解Factory機制的實現(xiàn)方式,有助于我們在實際工程中更好地應(yīng)用和調(diào)試。本文介紹Factory實現(xiàn)方式
2022-09-16 14:35:35
本文詳解了Linux內(nèi)核搶占實現(xiàn)機制。首先介紹了內(nèi)核搶占和用戶搶占的概念和區(qū)別,接著分析了不可搶占內(nèi)核的特點及實時系統(tǒng)中實現(xiàn)內(nèi)核搶占的必要性。然后分析了禁止內(nèi)核搶占的情況和內(nèi)核搶占的時機,最后介紹了實現(xiàn)搶占內(nèi)核所做的改動以及何時需要重新調(diào)度。
2019-08-06 06:16:22
最經(jīng)有個任務(wù),要開發(fā)space wire總線,不知道那個大俠對他比較了解,給講講,他的好處。稍微了解了一下,它的總線速度在200M/S,不如其他的總線快,為什么還用用這個了,很是迷茫,望高人指點
2009-09-06 22:30:56
內(nèi)核模塊程序加載到內(nèi)核中運行。結(jié)合lsmod及管道命令,查看內(nèi)核模塊程序在內(nèi)核中是否正確運行。四、總結(jié)本文主要講解了linux內(nèi)核模塊的概念和基本編程方法、內(nèi)核模塊組成結(jié)構(gòu),由于linux設(shè)備驅(qū)動以內(nèi)核
2021-09-24 09:11:03
想了解下鴻蒙系統(tǒng)內(nèi)核里面信號通信機制是什么?信號的傳輸流向是怎么樣的?有知道的嗎?
2020-09-24 09:59:07
本章學習目標掌握LINUX內(nèi)核版本的含義理解并掌握進程的概念掌握管道的概念及實現(xiàn)了解內(nèi)核的數(shù)據(jù)結(jié)構(gòu)了解LINUX內(nèi)核的算法掌握LINUX內(nèi)核升級的方法
2009-04-10 16:59:19
0 本書將Linux內(nèi)核的學習分為四個層次:全面了解,掌握基本功;興趣導向,選擇重點深度鉆研;融入
2010-11-09 17:05:15
0 你需要了解的嵌入式Linux
今天,Linux 正廣泛應(yīng)用于各種嵌入式設(shè)備的開發(fā)中,如數(shù)字電視、機頂盒、DVR播放器、xDSL/有線/PON調(diào)制解調(diào)器、家用路由器和網(wǎng)關(guān)。它尤其適
2010-01-18 16:19:36
631 
linux啟動時內(nèi)核解壓過程分析,一份不錯的文檔,深入了解內(nèi)核必備
2016-03-09 13:39:39
1 基于Linux內(nèi)核2_6的進程攔截機制的研究和實現(xiàn)_王全民
2017-03-18 09:15:44
3 后,都將面臨著同樣的問題,即如何將源代碼融入到 Linux 內(nèi)核中,增加相應(yīng)的 Linux 配置選項,并最終被編譯進 Linux 內(nèi)核。這就需要了解 Linux 的內(nèi)核配置系統(tǒng)。 眾所周知,Linux
2017-11-01 15:45:54
3 本文從Linux內(nèi)核幾種軟中斷機制相互關(guān)系和發(fā)展沿革入手,分析了這些機制的實現(xiàn)方法,給出了它們的基本用法。 軟中斷概況 軟中斷是利用硬件中斷的概念,用軟件方式進行模擬,實現(xiàn)宏觀上的異步執(zhí)行效果。很多
2017-11-02 11:01:58
0 RCU主要用于對性能要求苛刻的并行實時計算。例如:天氣預(yù)報、模擬核爆炸計算、內(nèi)核同步等等。
2017-11-07 11:09:15
3447 
記時器、簡短的優(yōu)先占有時間內(nèi)核、強有力的可預(yù)言的系統(tǒng)日程安排和提供任務(wù)性能保證的機制。 RedIce-Linux提供開放資源Linux的能力和可靠性,有唯一的實時系統(tǒng)能力來保證應(yīng)用性
2017-11-08 10:24:03
12 Linux內(nèi)核源碼當中,關(guān)于RCU的文檔比較齊全,你可以在 /Documentation/RCU/ 目錄下找到這些文件。Paul E. McKenney 是內(nèi)核中RCU源碼的主要實現(xiàn)者,他也寫了很多RCU方面的文章。今天我們而主要來說說linux內(nèi)核rcu的機制詳解。
2017-11-13 16:47:44
8497 
Linux 內(nèi)核有個機制叫OOM killer(Out-Of-Memory killer),該機制會監(jiān)控那些占用內(nèi)存過大,尤其是瞬間很快消耗大量內(nèi)存的進程,為了防止內(nèi)存耗盡而內(nèi)核會把該進程殺掉。典型
2017-11-13 17:01:23
1027 
路徑(進程)以交錯的方式運行。對于這些交錯路徑執(zhí)行的內(nèi)核路徑,如不采取必要的同步措施,將會對一些關(guān)鍵數(shù)據(jù)結(jié)構(gòu)進行交錯訪問和修改,從而導致這些數(shù)據(jù)結(jié)構(gòu)狀態(tài)的不一致,進而導致系統(tǒng)崩潰。因此,為了確保系統(tǒng)高效穩(wěn)定有序地運行,linux必須要采用同步機制。
2017-11-14 15:25:19
5320 
在現(xiàn)代操作系統(tǒng)里,同一時間可能有多個內(nèi)核執(zhí)行流在執(zhí)行,因此內(nèi)核其實象多進程多線程編程一樣也需要一些同步機制來同步各執(zhí)行單元對共享數(shù)據(jù)的訪問。尤其是在多處理器系統(tǒng)上,更需要一些同步機制來同步不同處理器上的執(zhí)行單元對共享的數(shù)據(jù)的訪問。
2017-11-14 15:52:46
6385 請注意,在單個CPU上讀寫鎖比RCU慢一個數(shù)量級,在16個CPU上讀寫鎖比RCU幾乎要慢兩個數(shù)量級。隨著CPU數(shù)量的增加,RCU的擴展性優(yōu)勢越來越突出。可以這么說,RCU幾乎就是水平擴展,這可以在上圖中看出來。
2018-05-10 09:13:08
10781 
模塊編程屬于內(nèi)核編程,因此,除了對內(nèi)核相關(guān)知識有所了解外,還需要了解與模塊相關(guān)的知識。
2018-08-24 17:15:46
8 了解如何配置和使用Linux內(nèi)核printk功能,包括其動態(tài)調(diào)試功能。
這樣可以選擇性地打印調(diào)試消息,而無需重新編譯內(nèi)核。
2018-11-27 06:40:00
2842 了解Linux設(shè)備驅(qū)動程序的基礎(chǔ)知識,重點關(guān)注設(shè)備節(jié)點,內(nèi)核框架,虛擬文件??系統(tǒng)和內(nèi)核模塊。
提出了一個簡單的內(nèi)核模塊實現(xiàn)。
2018-11-26 06:51:00
2886 了解如何獲取Xilinx Linux內(nèi)核源代碼,配置它,構(gòu)建內(nèi)核和設(shè)備樹,最后在ZC702板上運行新內(nèi)核。
2018-11-23 07:09:00
3116 本文檔的主要內(nèi)容主要是為了讓你完全了解了單片機主要包括了:1 了解單片機的基本結(jié)構(gòu)與應(yīng)用,2 了解單片機的邏輯語言,3 了解單片機學習的軟硬件條件
2019-02-20 14:05:14
1 Linux內(nèi)核代碼的龐大令不少人“望而生畏”,也正因為如此,使得人們對Linux的了解僅處于泛泛的層次。如果想透析Linux,深入操作系統(tǒng)的本質(zhì),閱讀內(nèi)核源碼是最有效的途徑。
2019-04-28 16:54:40
605 
Device mapper 是 Linux 2.6 內(nèi)核中提供的一種從邏輯設(shè)備到物理設(shè)備的映射框架機制,在該機制下,用戶可以很方便的根據(jù)自己的需要制定實現(xiàn)存儲資源的管理策略,當前比較流行
2019-04-29 15:25:50
578 在linux內(nèi)核系統(tǒng)中,各個模塊、子系統(tǒng)之間是相互獨立的。Linux內(nèi)核可以通過通知鏈機制來獲取由其它模塊或子系統(tǒng)產(chǎn)生的它感興趣的某些事件。
2019-05-05 11:46:56
2064 中斷是指在CPU正常運行期間,由于內(nèi)外部事件或由程序預(yù)先安排的事件引起的CPU暫時停止正在運行的程序,轉(zhuǎn)而為該內(nèi)部或外部事件或預(yù)先安排的事件服務(wù)的程序中去,服務(wù)完畢后再返回去繼續(xù)運行被暫時中斷的程序。Linux中通常分為外部中斷(又叫硬件中斷)和內(nèi)部中斷(又叫異常)。
2019-05-05 15:30:38
564 linux驅(qū)動程序一般工作在內(nèi)核空間,但也可以工作在用戶空間。下面我們將詳細解析,什么是內(nèi)核空間,什么是用戶空間,以及如何判斷他們
2019-05-06 16:13:00
607 在內(nèi)核調(diào)試技術(shù)之中,最簡單的就是printk的使用了,它的用法和C語言應(yīng)用程序中的printf使用類似,在應(yīng)用程序中依靠的是stdio.h中的庫,而在linux內(nèi)核中沒有這個庫,所以在linux內(nèi)核中,使用這個printk就要對內(nèi)核的實現(xiàn)有一定的了解。
2019-05-10 11:18:47
1584 之前一直認為linux中很多東西是用來保證緩存一致性的,其實不是。緩存一致性絕大部分是靠硬件機制實現(xiàn)的,只有在帶lock前綴的指令執(zhí)行時才與cache有一點關(guān)系。(這話說得絕對,但我目前看來就是這樣)我們更多的時候是為了保證順序一致性。
2019-05-10 14:20:31
416 在現(xiàn)代操作系統(tǒng)里,同一時間可能有多個內(nèi)核執(zhí)行流在執(zhí)行,因此內(nèi)核其實象多進程多線程編程一樣也需要一些同步機制來同步各執(zhí)行單元對共享數(shù)據(jù)的訪問。
2019-05-12 08:26:00
533 當編譯內(nèi)核代碼的時候,使用make C=1或C=2的時候,會調(diào)用一個叫Sparse的工具,這個工具對內(nèi)核代碼進行檢查,怎么檢查呢,就是靠對那些聲明過Sparse這個工具所能識別的特性的內(nèi)核函數(shù)或是變量進行檢查。
2019-05-12 09:48:00
465 Linux是單內(nèi)核系統(tǒng),可通用計算平臺的外圍設(shè)備是頻繁變化的,不可能將所有的(包括將來即將出現(xiàn)的)設(shè)備的驅(qū)動程序都一次性編譯進內(nèi)核,為了解決這個問題,Linux提出了可加載內(nèi)核模塊(Loadable
2019-05-13 10:04:53
553 
RCU(Read-Copy Update),顧名思義就是讀-拷貝修改,它是基于其原理命名的。對于被RCU保護的共享數(shù)據(jù)結(jié)構(gòu),讀者不需要獲得任何鎖就可以訪問它,但寫者在訪問它時首先拷貝一個副本,然后
2019-05-14 17:37:00
13853 
Linux內(nèi)核同步機制,挺復雜的一個東西,常用的有自旋鎖,信號量,互斥體,原子操作,順序鎖,RCU,內(nèi)存屏障等。
2019-05-14 14:10:38
560 大多數(shù)內(nèi)核子系統(tǒng)都是相互獨立的,因此某個子系統(tǒng)可能對其它子系統(tǒng)產(chǎn)生的事件感興趣。為了滿足這個需求,也即是讓某個子系統(tǒng)在發(fā)生某個事件時通知其它的子系統(tǒng),Linux內(nèi)核提供了通知鏈的機制。通知鏈表只能夠在內(nèi)核的子系統(tǒng)之間使用,而不能夠在內(nèi)核與用戶空間之間進行事件的通知。
2019-05-14 16:16:44
639 
所謂的"probe”,是指在Linux內(nèi)核中,如果存在相同名稱的device和device_driver,內(nèi)核就會執(zhí)行device_driver中的probe回調(diào)函數(shù),而該函數(shù)就是所有driver
2019-05-14 16:18:25
3677 
CPU級:主要實現(xiàn)比較容易的在系統(tǒng)處于目標在于頻繁發(fā)生、更高粒度的電源狀態(tài)改變,主要的實現(xiàn)方式為idle,包括今天的主要想講的動態(tài)主頻。
2019-05-14 16:20:15
668 
經(jīng)過對Linux系統(tǒng)有了一定了解和熟悉后,想對其更深層次的東西做進一步探究。這當中就包括系統(tǒng)的啟動流程、文件系統(tǒng)的組成結(jié)構(gòu)、基于動態(tài)庫和靜態(tài)庫的程序在執(zhí)行時的異同、協(xié)議棧的架構(gòu)和原理、驅(qū)動程序的機制等等。
2019-05-15 10:17:02
527 一些內(nèi)核調(diào)用可以用來方便標記bug,提供斷言并輸出信息。最常用的兩個是BUG()和BUG_ON()。當被調(diào)用的時候,它們會引發(fā)oops,導致棧的回溯和錯誤信息的打印。
2019-05-15 15:47:40
474 
的RCU callback請求處理。根據(jù)上面的思路,在linux2.6.23內(nèi)核中提供了SRCU機制,提供如下的API:int init_srcu_struct(struct srcu_struct *sp
2019-04-02 14:35:29
200 從Linux 2.6起引入了一套新的驅(qū)動管理和注冊機制:platform_device和platform_driver。
2019-11-06 14:12:50
1322 
嵌入式Linux系統(tǒng)做模塊化處理就是可劃分為Bootloader(引導程序),Kernel(內(nèi)核),fs(文件系統(tǒng)),Shell(命令行界面),Gui(圖形庫)和 Embeded Sql(嵌入式數(shù)據(jù)庫)等。
2019-12-10 16:40:36
687 Linux內(nèi)核是一個操作系統(tǒng)(OS)內(nèi)核,本質(zhì)上定義為類Unix。它用于不同的操作系統(tǒng),主要是以不同的Linux發(fā)行版的形式。Linux內(nèi)核是第一個真正完整且突出的免費和開源軟件示例。Linux 內(nèi)核是第一個真正完整且突出的免費和開源軟件示例,促使其廣泛采用并得到了數(shù)千名開發(fā)人員的貢獻。
2020-09-16 15:49:50
2323 在現(xiàn)代操作系統(tǒng)里,同一時間可能有多個內(nèi)核執(zhí)行流在執(zhí)行,因此內(nèi)核其實像多進程多線程編程一樣也需要一些同步機制來同步各執(zhí)行單元對共享數(shù)據(jù)的訪問,尤其是在多處理器系統(tǒng)上,更需要一些同步機制來同步不同處理器上的執(zhí)行單元對共享的數(shù)據(jù)的訪問。
2020-09-22 09:46:37
2013 
如今,IBM Z 擁抱 Linux 和開源已超過 20年,成為企業(yè)邁向混合云平臺的核心。讓我們一起跟隨時光快進,了解 Linux on IBM Z 的重大里程碑。
2020-11-18 11:41:21
2034 一、linux內(nèi)核學習之一:環(huán)境搭建--安裝Debian7.3 本系列文章假設(shè)讀者已對linux有一定的了解,其實學習linux內(nèi)核不需要有很深的關(guān)于linux的知識,只需要了解以下內(nèi)容:linux
2021-01-02 18:01:00
1868 作為最流行的開源操作系統(tǒng),Linux在各行各業(yè)得到了廣泛的應(yīng)用。因此了解Linux 內(nèi)核的架構(gòu)及工作機制就顯得非常重要
2021-04-02 11:30:12
1851 
Linux內(nèi)核文件Cache機制(開關(guān)電源技術(shù)與設(shè)計 第二版)-Linux內(nèi)核文件Cache機制? ? ? ? ? ? ? ??
2021-08-31 16:34:54
4 為了解決小塊內(nèi)存的分配問題,Linux 內(nèi)核提供了塊分配器,最早實現(xiàn)的塊分配器是SLAB 分配器。
2022-07-27 09:35:37
1194 想要做到對 Linux 了如指掌,你需要爬過6個陡坡:熟練使用 Linux 命令行、使用 Linux 進行程序設(shè)計、了解 Linux 內(nèi)核機制、閱讀 Linux 內(nèi)核代碼、實驗定制 Linux 組件以及最后落到生產(chǎn)實踐上。
2022-08-19 15:00:40
1683 【Linux內(nèi)核】從小小的宏定義窺探Linux內(nèi)核的精妙設(shè)計
2022-08-31 13:30:06
1602 與hardlockup機制類似, softlockup也是在watchdog框架下關(guān)注于某個task一直處于內(nèi)核態(tài)而不給其它task運行機會的一種debug機制.具體的超時判斷時間一般為20S,也可以通過sysctrl 來進行修改.
2023-06-23 15:30:00
1033 
線程是操作系統(tǒng)的重要組成部件之一,linux內(nèi)核中,內(nèi)核線程是如何創(chuàng)建的,在內(nèi)核啟動過程中,誕生了哪些支撐整個系統(tǒng)運轉(zhuǎn)的線程,本文將帶著這個疑問瞅一瞅內(nèi)核源碼,分析內(nèi)核線程的創(chuàng)建機制。
2023-07-10 10:45:28
434 
評論