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