嵌入式系統(tǒng)Linux內(nèi)核開(kāi)發(fā)工程師必須掌握的三十道題 linux內(nèi)核工程師需要知道的30個(gè)問(wèn)題,看看你能回答出多少個(gè)。
2018-04-22 08:22:022614 概要:本文內(nèi)容包含Linux源碼樹(shù)結(jié)構(gòu)分析、Linux Makefile分析、Kconfig文件分析、Linux內(nèi)核配置選項(xiàng)分析。這些知識(shí)是為了理解內(nèi)核文件的組織形式,為具體移植內(nèi)核做知識(shí)準(zhǔn)備。
2022-05-10 19:28:405277 Linux 應(yīng)用編程中最需要掌握的基礎(chǔ)就是文件 I/O的操作,學(xué)習(xí)過(guò)linux或者有過(guò)了解的應(yīng)該都會(huì)聽(tīng)過(guò)一句話:linux中一切皆文件,文件是linux系統(tǒng)的核心設(shè)計(jì)思想。所以掌握文件的操作是很重要的。
2023-01-11 15:40:38322 linux 操作系統(tǒng)把虛擬地址分為用戶(hù)空間和內(nèi)核空間,內(nèi)核空間可以通過(guò)procfs把內(nèi)核的數(shù)據(jù)呈現(xiàn)給用戶(hù)空間,用戶(hù)空間也可以把數(shù)據(jù)寫(xiě)入到內(nèi)核從而更改內(nèi)核的行為,這在驅(qū)動(dòng)中很常見(jiàn),最終目的就是app就能通過(guò)讀寫(xiě)procfs的文件和內(nèi)核交互。
2023-06-16 10:32:43547 Linux操作系統(tǒng)是當(dāng)今世界上最為廣泛使用的開(kāi)源操作系統(tǒng)之一,內(nèi)核則是一個(gè)操作系統(tǒng)的核心和靈魂所在。對(duì)于一名Linux驅(qū)動(dòng)開(kāi)發(fā)者來(lái)說(shuō),了解Linux內(nèi)核的運(yùn)行機(jī)制和Linux內(nèi)核提供的一些關(guān)鍵功能(如虛擬內(nèi)存管理、進(jìn)程管理、文件系統(tǒng)、網(wǎng)絡(luò)協(xié)議棧等)都是我們?nèi)粘9ぷ骱蛯W(xué)習(xí)的重點(diǎn)。
2023-07-06 11:46:411045 Linux內(nèi)核源碼文件繁多,搞不清Makefile、Kconfig、.config間的關(guān)系,不了解內(nèi)核編譯體系,編譯修改內(nèi)核有問(wèn)題無(wú)從下手,自己寫(xiě)的驅(qū)動(dòng)不知道怎么編進(jìn)內(nèi)核,不知道怎么配置內(nèi)核,這些
2023-10-17 16:19:521106 在Linux內(nèi)核中,RCU最常見(jiàn)的用途是替換讀寫(xiě)鎖。在20世紀(jì)90年代初期,Paul在實(shí)現(xiàn)通用RCU之前,實(shí)現(xiàn)了一種輕量級(jí)的讀寫(xiě)鎖。后來(lái),為這個(gè)輕量級(jí)讀寫(xiě)鎖原型所設(shè)想的每個(gè)用途,最終都使用RCU來(lái)實(shí)現(xiàn)了。
2023-12-27 09:56:44643 1.1 Linux內(nèi)核模塊介紹1.1.1 Linux內(nèi)核模塊概述嵌入式設(shè)備驅(qū)動(dòng)開(kāi)發(fā)中將驅(qū)動(dòng)程序以模塊的形式發(fā)布,更是極大地提高了設(shè)備使用的靈活性——用戶(hù)只需要拿到相關(guān)驅(qū)動(dòng)模塊,再插入到用戶(hù)的內(nèi)核中
2019-10-05 20:36:18
,我們不可能對(duì)全部的內(nèi)核代碼進(jìn)行分析。因此,通過(guò)對(duì)待分析的代碼進(jìn)行信息搜集,然后按照上述的流程分析出代碼的原本始末是了解內(nèi)核本質(zhì)的有效手段。這種按照具體需要分析內(nèi)核代碼的方式,為快速進(jìn)入Linux內(nèi)核
2020-05-11 07:00:00
Linux新手要了解的十個(gè)知識(shí)點(diǎn)1.Linux是大小寫(xiě)敏感的系統(tǒng),舉個(gè)例子,Mozilla, MOZILLA, mOzilla和 mozilla是四個(gè)不同的命令(但是只有第四個(gè)mozilla是真正
2016-04-02 16:22:37
方式基本上是類(lèi)似的。因此,對(duì)于任何一款MCU,主要應(yīng)從如下的幾個(gè)方面來(lái)理解和掌握:MCU的特點(diǎn)要了解一款MCU,首先需要知道就是其ROM空間、RAM空間、IO口數(shù)量、定時(shí)器數(shù)量和定時(shí)方式、所提供...
2021-11-03 07:24:39
SAW和BAW濾波器你需要了解這些
2021-05-24 06:41:17
`一、看威武霸氣的封面作者:趙炯 二、讀讀簡(jiǎn)介,看看適合你嗎?本書(shū)對(duì)Linux早期操作系統(tǒng)內(nèi)核(v0.11)全部代碼文件進(jìn)行了詳細(xì)全面的注釋和說(shuō)明,旨在使讀者能夠在盡量短的時(shí)間內(nèi)對(duì)Linux
2015-09-11 22:25:28
的挑戰(zhàn),為了解決這個(gè)問(wèn)題,Linux內(nèi)核引入內(nèi)核模塊機(jī)制,通過(guò)動(dòng)態(tài)加載內(nèi)核模塊,從而實(shí)現(xiàn)在運(yùn)行過(guò)程中擴(kuò)展內(nèi)核的功能。內(nèi)核模塊是什么?1 內(nèi)核模塊是一種沒(méi)有經(jīng)過(guò)鏈接,不能獨(dú)立運(yùn)行的目標(biāo)文件,是在內(nèi)核空間
2019-07-16 07:00:00
layout: posttags: [STM32]comments: true文章目錄layout: posttags: [STM32]comments: true為什么要了解時(shí)鐘樹(shù)?樹(shù)的根標(biāo)準(zhǔn)庫(kù)
2021-08-12 06:13:08
我可以使用 uuu 下載 uboot (flash.bin) 文件,然后我需要做一些 linux 內(nèi)核啟動(dòng)和調(diào)試。
我想看看是否有 uuu 命令,以便我可以下載 linux 內(nèi)核?(圖像文件)。
像這樣:`uuu.exe -b emmc flash.bin`
2023-04-28 07:42:38
= bootloader + linux內(nèi)核 + 根文件系統(tǒng)(里面含有APP)。② bootloader:它的目的是啟動(dòng)內(nèi)核,去哪讀內(nèi)核?讀到哪里?去Flash等外設(shè)讀內(nèi)核,存到內(nèi)存里去。所以需要有Flash里外設(shè)的驅(qū)動(dòng)能力,為了調(diào)試方便還會(huì)有網(wǎng)絡(luò)功能。所以,可以認(rèn)為 booloader =.
2021-11-05 06:12:28
系統(tǒng)(VFS)是 Linux 內(nèi)核中非常有用的一個(gè)方面,因?yàn)樗鼮?b class="flag-6" style="color: red">文件系統(tǒng)提供了一個(gè)通用的接口抽象。VFS 在 SCI 和內(nèi)核所支持的文件系統(tǒng)之間提供了一個(gè)交換層(請(qǐng)參看圖4)。圖4 Linux文件系統(tǒng)層次結(jié)構(gòu)
2018-08-27 10:31:28
編譯工具鏈,在此就不再贅述。編寫(xiě)Linux內(nèi)核需要內(nèi)核源碼和內(nèi)核編譯配置文件kernel_config,如下圖:具體編譯步驟如下:1.解壓內(nèi)核源碼tar-jxvfkernel...
2021-11-04 07:42:15
最近在Linux下搞omapl138,發(fā)現(xiàn)不同的軟件包需要不同的Linux內(nèi)核。有幾個(gè)問(wèn)題請(qǐng)問(wèn):1、在Linux下可以編譯多個(gè)Linux內(nèi)核嗎?2、各個(gè)Linux內(nèi)核編譯生成的uImage文件到底有什么用?3、很多程序驅(qū)動(dòng)板子時(shí)候需要用到uImage,和編譯內(nèi)核生成的uImage一樣嗎?
2020-04-20 08:23:06
編譯后有1.3G,通過(guò)裁減編譯出的linux鏡像zImage不到4M– 4M源碼鏡像中,還有大部分不用我們關(guān)心– 我們只需要了解對(duì)寫(xiě)代碼有幫助的部分,掌握我們需要掌握的代碼– 前面Linux代碼中只有
2015-08-10 15:16:16
驗(yàn)證MPLS(OC-192,VPN,10GbE):在開(kāi)始之前需要了解的內(nèi)容
2019-05-23 06:22:07
處理程序快速響應(yīng)單個(gè)中斷然后最終退出而存在 。linux內(nèi)核整體非常龐大,包含組件特別多,當(dāng)我們把需要的部分包含到內(nèi)核中,直接把需要的所有功能都編譯到內(nèi)核中會(huì)導(dǎo)致內(nèi)核很大,而且當(dāng)需要新增或者刪除功能
2021-09-24 09:11:03
本章學(xué)習(xí)目標(biāo)掌握LINUX內(nèi)核版本的含義理解并掌握進(jìn)程的概念掌握管道的概念及實(shí)現(xiàn)了解內(nèi)核的數(shù)據(jù)結(jié)構(gòu)了解LINUX內(nèi)核的算法掌握LINUX內(nèi)核升級(jí)的方法
2009-04-10 16:59:190 Linux內(nèi)核解讀入門(mén)關(guān)鍵詞:Linux, 內(nèi)核,源代碼一.核心源程序的文件組織: 1. Linux核心源程序通常都安裝在/usr/src/linux下,而且它有一個(gè)非常簡(jiǎn)單的編號(hào)約定:任何偶數(shù)的核
2010-01-16 14:40:10103 你需要了解的嵌入式Linux
今天,Linux 正廣泛應(yīng)用于各種嵌入式設(shè)備的開(kāi)發(fā)中,如數(shù)字電視、機(jī)頂盒、DVR播放器、xDSL/有線/PON調(diào)制解調(diào)器、家用路由器和網(wǎng)關(guān)。它尤其適
2010-01-18 16:19:36631 本書(shū)對(duì)LINUX早期操作系統(tǒng)內(nèi)核(V0.11)全部代碼文件進(jìn)行了詳細(xì)全面的注釋和說(shuō)明,旨在使讀者能夠在盡量短的時(shí)間內(nèi)對(duì)LINUX的工作機(jī)理獲得全面而深刻的理解,為進(jìn)一步學(xué)習(xí)和研究LINUX系
2011-04-05 20:53:4184 linux啟動(dòng)時(shí)內(nèi)核解壓過(guò)程分析,一份不錯(cuò)的文檔,深入了解內(nèi)核必備
2016-03-09 13:39:391 loader(FSBL)和引導(dǎo)linux需要的Second-Stage boot loader(SSBL)、Linux內(nèi)核zImage、設(shè)備樹(shù)文件devicetree_ramdisk.dtb 以及根文件系統(tǒng)ramdisk8M.image.gz。
2017-02-10 18:46:111328 、鏈接文件和設(shè)備文件。 那么,內(nèi)核如何區(qū)分和引用特定的文件呢?這里用到了一個(gè)重要的概念文件描述符。對(duì)于Linux而言,所有對(duì)設(shè)備和文件的操作都是使用文件描述符來(lái)進(jìn)行的。文件描述符是一個(gè)非負(fù)的整數(shù),它是一個(gè)索引值,并指向在內(nèi)核中每個(gè)進(jìn)程打開(kāi)文件的
2017-10-18 14:35:520 6.6 實(shí)驗(yàn)內(nèi)容 6.6.1 文件讀寫(xiě)及上鎖 1.實(shí)驗(yàn)?zāi)康?通過(guò)編寫(xiě)文件讀寫(xiě)及上鎖的程序,進(jìn)一步熟悉Linux中文件I/O相關(guān)的應(yīng)用開(kāi)發(fā),并且熟練掌握open()、read()、write
2017-10-18 17:34:510 后,都將面臨著同樣的問(wèn)題,即如何將源代碼融入到 Linux 內(nèi)核中,增加相應(yīng)的 Linux 配置選項(xiàng),并最終被編譯進(jìn) Linux 內(nèi)核。這就需要了解 Linux 的內(nèi)核配置系統(tǒng)。 眾所周知,Linux
2017-11-01 15:45:543 Linux的啟動(dòng)代碼真的挺大,從匯編到C,從Makefile到LDS文件,需要理解的東西很多。畢竟Linux內(nèi)核是由很多人,花費(fèi)了巨大的時(shí)間和精力寫(xiě)出來(lái)的。而且直到現(xiàn)在,這個(gè)世界上仍然有成千上萬(wàn)的程序員在不斷完善Linux內(nèi)核的代碼。
2017-11-14 16:19:464159 模塊編程屬于內(nèi)核編程,因此,除了對(duì)內(nèi)核相關(guān)知識(shí)有所了解外,還需要了解與模塊相關(guān)的知識(shí)。
2018-08-24 17:15:468 當(dāng) Linus 開(kāi)發(fā)出剛起步的 Linux 內(nèi)核時(shí),Rémy Card 從事第一代的 ext 文件系統(tǒng)的開(kāi)發(fā)工作。ext 文件系統(tǒng)在 1992 年首次實(shí)現(xiàn)并發(fā)布 —— 僅在 Linux 首次發(fā)布后的一年!—— ext 解決了 MINIX 文件系統(tǒng)中最糟糕的問(wèn)題。
2018-09-14 14:50:046096 了解Linux設(shè)備驅(qū)動(dòng)程序的基礎(chǔ)知識(shí),重點(diǎn)關(guān)注設(shè)備節(jié)點(diǎn),內(nèi)核框架,虛擬文件??系統(tǒng)和內(nèi)核模塊。
提出了一個(gè)簡(jiǎn)單的內(nèi)核模塊實(shí)現(xiàn)。
2018-11-26 06:51:002886 單個(gè)進(jìn)程能夠監(jiān)視的文件描述符的數(shù)量存在最大限制,通常是1024,當(dāng)然可以更改數(shù)量,但由于select采用輪詢(xún)的方式掃描文件描述符,文件描述符數(shù)量越多,性能越差
2019-04-23 13:50:11424 每臺(tái)通用計(jì)算機(jī)都需要將各種數(shù)據(jù)存儲(chǔ)在硬盤(pán)驅(qū)動(dòng)器(HDD)或其他類(lèi)似設(shè)備上,比如 USB 存儲(chǔ)器。這樣做有兩個(gè)原因。首先,當(dāng)計(jì)算機(jī)關(guān)閉以后,內(nèi)存(RAM)會(huì)失去存于它里面的內(nèi)容。
2019-05-04 16:54:00184 inode本身并不記錄文件名,文件名記錄在目錄文件的block當(dāng)中,所以新增、刪除、更改文件名與目錄的W權(quán)限有關(guān)。因此當(dāng)我們要讀某個(gè)檔案時(shí),就務(wù)必經(jīng)過(guò)其目錄的inode和block,然后才能夠找到待讀取檔案的inode號(hào),最終才會(huì)讀到正確的檔案block內(nèi)的數(shù)據(jù)。
2019-04-24 14:46:57465 linux2.6內(nèi)核引入sysfs文件系統(tǒng),sysfs可以看成與proc,devfs和devpty同類(lèi)別的文件系統(tǒng),該文件系統(tǒng)是虛擬的文件系統(tǒng),可以更方便對(duì)系統(tǒng)設(shè)備進(jìn)行管理。
2019-04-25 16:20:344007 Linux文件系統(tǒng)中的文件是數(shù)據(jù)的集合,文件系統(tǒng)不僅包含著文件中的數(shù)據(jù)而且還有系統(tǒng)的結(jié)構(gòu),所有Linux用戶(hù)和程序看到的文件、目錄、軟鏈接及文件保護(hù)信息等都存儲(chǔ)在其中。
2019-04-25 17:44:23605 就是磁盤(pán)分區(qū)的掛載命令,如果內(nèi)核支持的話,mount 命令能掛載幾乎所有的文件系統(tǒng),比如 reiserfs;ext2;ext3;ntfs;fat32;jfs等等;在Linux系統(tǒng)中,我們常用的主要有reiserfs;ext3; ext3;在Windows系統(tǒng)中,我們主要用的是NTFS;FAT32;FAT等;
2019-04-25 18:47:021468 Linux中的文件是什么?它的文件系統(tǒng)又是什么?那些配置文件又在哪里?我下載好的程序保存在哪里了?在 Linux 中文件系統(tǒng)是標(biāo)準(zhǔn)結(jié)構(gòu)的嗎?
2019-04-27 14:06:00591 文件系統(tǒng)是 Linux 系統(tǒng)的重要組成部分,文件系統(tǒng)的配置和使用對(duì)整個(gè)系統(tǒng)的運(yùn)行有著重要的影響。本文介紹了一些 Linux 系統(tǒng)上對(duì)文件系統(tǒng)的配置技巧,達(dá)到節(jié)省能耗并目的,有的技巧還可以提高系統(tǒng)的性能。
2019-04-27 19:22:00534 用戶(hù)和應(yīng)用程序可以通過(guò) proc 得到系統(tǒng)的信息,并可以改變內(nèi)核的某些參數(shù)。由于系統(tǒng)的信息,如進(jìn)程,是動(dòng)態(tài)改變的,所以用戶(hù)或應(yīng)用程序讀取 proc 文件時(shí),proc 文件系統(tǒng)是動(dòng)態(tài)從系統(tǒng)內(nèi)核讀出所需信息并提交的。
2019-04-26 15:37:52515 Linux內(nèi)核命令行有6個(gè)環(huán)境變量。如果即將達(dá)到或者已經(jīng)超過(guò)了的話 root= 參數(shù)會(huì)沒(méi)有傳進(jìn)去
2019-04-26 17:11:203624 嵌入式Linux系統(tǒng)使用的是Linux內(nèi)核,制作方法基本和X86平臺(tái)的Linux內(nèi)核一致,下面介紹制作運(yùn)行于micro2440開(kāi)發(fā)板的內(nèi)核和根文件系統(tǒng)。
2019-04-28 15:13:36554 廣義地來(lái)說(shuō)kernel就是一個(gè)軟件,它在硬件和運(yùn)行在計(jì)算機(jī)上的應(yīng)用程序之間提供了一個(gè)層。嚴(yán)格點(diǎn)從計(jì)算機(jī)科學(xué)的角度來(lái)說(shuō),Linux中的Kernel指的是Linus Torvalds在90年代初期寫(xiě)的那點(diǎn)代碼。
2019-04-28 15:25:292226 Linux內(nèi)核代碼的龐大令不少人“望而生畏”,也正因?yàn)槿绱?,使得人們?duì)Linux的了解僅處于泛泛的層次。如果想透析Linux,深入操作系統(tǒng)的本質(zhì),閱讀內(nèi)核源碼是最有效的途徑。
2019-04-28 16:54:40605 硬鏈接與軟鏈接是 Linux 文件系統(tǒng)中的一個(gè)重要概念,其涉及文件系統(tǒng)中的索引節(jié)點(diǎn) (index node 又稱(chēng) inode),而索引節(jié)點(diǎn)對(duì)象是 Linux 虛擬文件系統(tǒng) (VFS) 的四個(gè)基本概念之一。
2019-04-28 17:01:27675 linux的內(nèi)存管理采取的分頁(yè)存取機(jī)制,會(huì)將內(nèi)存中不經(jīng)常使用的數(shù)據(jù)塊交換到虛擬內(nèi)存中。linux會(huì)不時(shí)地進(jìn)行頁(yè)面交換操作,以保持盡可能多的空閑物理內(nèi)存,即使并沒(méi)有什么事需要內(nèi)存,linux也會(huì)交換出暫時(shí)不用的內(nèi)存頁(yè)面。
2019-04-28 17:13:401606 video4linux2(V4L2)是Linux內(nèi)核中關(guān)于視頻設(shè)備的中間驅(qū)動(dòng)層,向上為Linux應(yīng)用程序訪問(wèn)視頻設(shè)備提供了通用接口,向下為linux中設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)提供了統(tǒng)一的V4L2框架。
2019-04-28 17:29:13890 Device mapper 是 Linux 2.6 內(nèi)核中提供的一種從邏輯設(shè)備到物理設(shè)備的映射框架機(jī)制,在該機(jī)制下,用戶(hù)可以很方便的根據(jù)自己的需要制定實(shí)現(xiàn)存儲(chǔ)資源的管理策略,當(dāng)前比較流行
2019-04-29 15:25:50578 GNU/Linux在支持文件系統(tǒng)創(chuàng)新方面已經(jīng)取得了極大的成功,目前已支持超過(guò)50種文件系統(tǒng),毫無(wú)疑問(wèn),這一成功與Linux一向的開(kāi)源策略是密不可分的。
2019-05-05 11:16:21582 udev文件系統(tǒng)是針對(duì)2.6內(nèi)核,提供一個(gè)基于用戶(hù)空間的動(dòng)態(tài)設(shè)備節(jié)點(diǎn)管理和命名的解決方案,網(wǎng)上關(guān)于為什么要使用udev文件系統(tǒng),udev文件系統(tǒng)和devfs文件系統(tǒng)的比較,等等的文章已經(jīng)很多了,如果你想了解這方面的內(nèi)容,請(qǐng)直接搜索相關(guān)的關(guān)鍵字
2019-05-05 14:28:44776 linux驅(qū)動(dòng)程序一般工作在內(nèi)核空間,但也可以工作在用戶(hù)空間。下面我們將詳細(xì)解析,什么是內(nèi)核空間,什么是用戶(hù)空間,以及如何判斷他們
2019-05-06 16:13:00607 針對(duì)2.6內(nèi)核的Linux系統(tǒng),需要你的機(jī)器上已經(jīng)安裝了kernel-devel這個(gè)包,也就是編譯模塊所必須的東西:內(nèi)核的頭文件和一些Makefile。
2019-05-06 15:42:13755 進(jìn)程凍結(jié)技術(shù)(freezing of tasks)是指在系統(tǒng)hibernate或者suspend的時(shí)候,將用戶(hù)進(jìn)程和部分內(nèi)核線程置于“可控”的暫停狀態(tài)。
2 為什么需要凍結(jié)技術(shù)
2019-05-06 16:00:16678 內(nèi)核,是一個(gè)操作系統(tǒng)的核心。它負(fù)責(zé)管理系統(tǒng)的進(jìn)程、內(nèi)存、設(shè)備驅(qū)動(dòng)程序、文件和網(wǎng)絡(luò)系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性。
2019-05-06 17:07:131218 在Linux中斷子系統(tǒng)(generic irq)出現(xiàn)之前,內(nèi)核使用__do_IRQ處理所有的中斷,這意味著__do_IRQ中要處理各種類(lèi)型的中斷,這會(huì)導(dǎo)致軟件的復(fù)雜性增加,層次不分明,而且代碼的可重用性也不好。
2019-05-10 10:56:091325 當(dāng)編譯內(nèi)核代碼的時(shí)候,使用make C=1或C=2的時(shí)候,會(huì)調(diào)用一個(gè)叫Sparse的工具,這個(gè)工具對(duì)內(nèi)核代碼進(jìn)行檢查,怎么檢查呢,就是靠對(duì)那些聲明過(guò)Sparse這個(gè)工具所能識(shí)別的特性的內(nèi)核函數(shù)或是變量進(jìn)行檢查。
2019-05-12 09:48:00465 linux下C語(yǔ)言對(duì)于文件的操作,我們會(huì)經(jīng)常用到fopen(),fclose(),fwrite(),fread(),fgets()等一系列庫(kù)函數(shù),基本和是和windows下學(xué)習(xí)C語(yǔ)言一樣的,其實(shí)這些庫(kù)函數(shù)就是在linuxx下對(duì)系統(tǒng)調(diào)用函數(shù)的封裝,因此這里只介紹系統(tǒng)函數(shù)下的文件操作函數(shù)。
2019-05-12 10:09:02402 使用 Linux 最酷的事情之一就是隨著時(shí)間的推移,你可以不斷獲得新的知識(shí)。每天,你都可能會(huì)遇到一個(gè)新的實(shí)用工具,或者只是一個(gè)不太熟悉的奇技淫巧,但是卻非常有用。這些零碎的東西并不總是能夠改變生活,但是卻是專(zhuān)業(yè)知識(shí)的基礎(chǔ)。
2019-05-13 09:44:42212 眾所周知,Linux 桌面系統(tǒng)與 MAC 或 Windows 相比有許多不如人意的地方,為了改善這種狀況,開(kāi)源社區(qū)提出用戶(hù)態(tài)需要內(nèi)核提供一些機(jī)制,以便用戶(hù)態(tài)能夠及時(shí)地得知內(nèi)核或底層硬件設(shè)備發(fā)生
2019-05-13 09:47:27383 Linux是單內(nèi)核系統(tǒng),可通用計(jì)算平臺(tái)的外圍設(shè)備是頻繁變化的,不可能將所有的(包括將來(lái)即將出現(xiàn)的)設(shè)備的驅(qū)動(dòng)程序都一次性編譯進(jìn)內(nèi)核,為了解決這個(gè)問(wèn)題,Linux提出了可加載內(nèi)核模塊(Loadable
2019-05-13 10:04:53553 Linux通過(guò)系統(tǒng)硬件定時(shí)器以規(guī)律的間隔(由HZ度量)產(chǎn)生定時(shí)器中斷,每次中斷使得一個(gè)內(nèi)核計(jì)數(shù)器的值jiffies累加,因此這個(gè)jiffies就記錄了系統(tǒng)啟動(dòng)開(kāi)始的時(shí)間流逝,然后內(nèi)核據(jù)此實(shí)現(xiàn)軟件定時(shí)器和延時(shí)。
2019-05-13 11:19:121212 對(duì)于包含 MMU 的處理器而言, Linux 系統(tǒng)提供了復(fù)雜的存儲(chǔ)管理系統(tǒng),使得進(jìn)程所能訪問(wèn)的內(nèi)存達(dá)到 4GB。進(jìn)程的 4GB 內(nèi)存空間被分為兩個(gè)部分—用戶(hù)空間與內(nèi)核空間。
2019-05-13 11:24:14666 Linux將存儲(chǔ)器和外設(shè)分為3個(gè)基礎(chǔ)類(lèi):字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備
2019-05-13 11:50:501296 大多數(shù)內(nèi)核子系統(tǒng)都是相互獨(dú)立的,因此某個(gè)子系統(tǒng)可能對(duì)其它子系統(tǒng)產(chǎn)生的事件感興趣。為了滿(mǎn)足這個(gè)需求,也即是讓某個(gè)子系統(tǒng)在發(fā)生某個(gè)事件時(shí)通知其它的子系統(tǒng),Linux內(nèi)核提供了通知鏈的機(jī)制。通知鏈表只能夠在內(nèi)核的子系統(tǒng)之間使用,而不能夠在內(nèi)核與用戶(hù)空間之間進(jìn)行事件的通知。
2019-05-14 16:16:44639 除了wall time,linux系統(tǒng)中也需要了解系統(tǒng)自啟動(dòng)以來(lái)過(guò)去了多少的時(shí)間,這時(shí)候,我們可以把鐘表的epoch調(diào)整成系統(tǒng)的啟動(dòng)時(shí)間點(diǎn),這時(shí)候獲取系統(tǒng)啟動(dòng)時(shí)間就很容易了,直接看這塊鐘表的讀數(shù)即可。
2019-05-15 10:43:161742 嵌入式Linux中文站從互聯(lián)網(wǎng)收集整理Linux0.11版本的筆記,Linux 內(nèi)核主要由 5 個(gè)模塊構(gòu)成,它們分別是:進(jìn)程調(diào)度模塊、內(nèi)存管理模塊、文件系統(tǒng)模塊、進(jìn)程間通信模塊和網(wǎng)絡(luò)接口模塊。
2019-05-15 14:32:18630 dentry:指向代表著或?qū)⒁泶齽?chuàng)建設(shè)備文件節(jié)點(diǎn)的目錄項(xiàng)dentry結(jié)構(gòu),sys_mknod中l(wèi)ookup_create在內(nèi)核dentry結(jié)構(gòu)雜湊表中找到或創(chuàng)建
2019-05-15 15:29:151758 、文件、地址空間以及進(jìn)程間通信等邏輯概念。這種抽象虛擬機(jī)使得應(yīng)用程序的開(kāi)發(fā)變得相對(duì)容易:開(kāi)發(fā)者只需與虛擬機(jī)中的各種邏輯對(duì)象交互,而不需要了解各種機(jī)器的具體細(xì)節(jié)。此外,這些抽象的邏輯對(duì)象使得操作系統(tǒng)能夠
2019-04-02 14:38:49344 內(nèi)核,是一個(gè)操作系統(tǒng)的核心。它負(fù)責(zé)管理系統(tǒng)的進(jìn)程、內(nèi)存、設(shè)備驅(qū)動(dòng)程序、文件和網(wǎng)絡(luò)系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性。Linux作為一個(gè)自由軟件,在廣大愛(ài)好者的支持下,內(nèi)核版本
2019-04-02 14:46:50455 硬件工程師需要了解的一些PCB設(shè)計(jì)問(wèn)題
2019-08-20 10:36:194206 Linux內(nèi)核是一個(gè)操作系統(tǒng)(OS)內(nèi)核,本質(zhì)上定義為類(lèi)Unix。它用于不同的操作系統(tǒng),主要是以不同的Linux發(fā)行版的形式。Linux內(nèi)核是第一個(gè)真正完整且突出的免費(fèi)和開(kāi)源軟件示例。Linux 內(nèi)核是第一個(gè)真正完整且突出的免費(fèi)和開(kāi)源軟件示例,促使其廣泛采用并得到了數(shù)千名開(kāi)發(fā)人員的貢獻(xiàn)。
2020-09-16 15:49:502323 OpenHarmony快速入門(mén)需要了解的三種開(kāi)發(fā)板:Hi3861開(kāi)發(fā)板、Hi3516開(kāi)發(fā)板、Hi3518開(kāi)發(fā)板
2021-06-24 16:01:511270 內(nèi)核,是一個(gè)操作系統(tǒng)的核心。它負(fù)責(zé)管理系統(tǒng)的進(jìn)程、內(nèi)存、設(shè)備驅(qū)動(dòng)程序、文件和網(wǎng)絡(luò)系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性。Linux 作為一個(gè)自由軟件,在廣大愛(ài)好者的支持下,內(nèi)核版本不斷更新。新的內(nèi)核修訂
2020-11-04 18:04:108 有時(shí)候需要在 Linux kernel-大多是在需要調(diào)試的驅(qū)動(dòng)程序-中讀寫(xiě)文件數(shù)據(jù)。在 kernel中操作文件沒(méi)有標(biāo)準(zhǔn)庫(kù)可用,需要利用 kernel的一些函數(shù),這些函數(shù)主要有: filp open
2020-11-05 14:53:349 Linux內(nèi)核源碼文件繁多,搞不清Makefile、Kconfig、.config間的關(guān)系,不了解內(nèi)核編譯體系,編譯修改內(nèi)核有問(wèn)題無(wú)從下手,自己寫(xiě)的驅(qū)動(dòng)不知道怎么編進(jìn)內(nèi)核,不知道怎么配置內(nèi)核,這些
2020-11-12 17:31:552711 一、linux內(nèi)核學(xué)習(xí)之一:環(huán)境搭建--安裝Debian7.3 本系列文章假設(shè)讀者已對(duì)linux有一定的了解,其實(shí)學(xué)習(xí)linux內(nèi)核不需要有很深的關(guān)于linux的知識(shí),只需要了解以下內(nèi)容:linux
2021-01-02 18:01:001868 關(guān)于電池管理,您需要了解的內(nèi)容
2021-05-12 11:33:354 Linux內(nèi)核文件Cache機(jī)制(開(kāi)關(guān)電源技術(shù)與設(shè)計(jì) 第二版)-Linux內(nèi)核文件Cache機(jī)制? ? ? ? ? ? ? ??
2021-08-31 16:34:544 編譯工具鏈,在此就不再贅述。編寫(xiě)Linux內(nèi)核需要內(nèi)核源碼和內(nèi)核編譯配置文件kernel_config,如下圖:具體編譯步驟如下:1.解壓內(nèi)核源碼tar -jxvf kernel...
2021-11-01 17:07:2016 Linux內(nèi)核配置及編譯解壓內(nèi)核建立源碼目錄該目錄下以patch結(jié)尾的文件為ST官方提供的補(bǔ)丁文件,linux-5.4.31.tar.xz為標(biāo)準(zhǔn)linux源碼包。解壓標(biāo)準(zhǔn)內(nèi)核源碼包
2021-12-04 21:06:169 學(xué)習(xí)linux內(nèi)核,這個(gè)可不像學(xué)一門(mén)語(yǔ)言,c或者java一個(gè)月或者3月你就能精通掌握。學(xué)習(xí)linux內(nèi)核是需要一步一步循序漸進(jìn),掌握正確的linux內(nèi)核學(xué)習(xí)路線對(duì)學(xué)習(xí)至關(guān)重要,本篇文章就來(lái)分享學(xué)習(xí)linux內(nèi)核的一些建議吧。
2022-05-07 15:20:27447 鏈表宏在linux內(nèi)核、鴻蒙內(nèi)核、rtos和一些開(kāi)源代碼中用的非常多。鏈表宏是雙向鏈表的經(jīng)典實(shí)現(xiàn)方式,總代碼不超過(guò)50行,相當(dāng)精煉。在一些開(kāi)源框架中,它的數(shù)據(jù)結(jié)構(gòu),就是以鏈表宏為基礎(chǔ)進(jìn)行搭建(如shttpd,一個(gè)開(kāi)源的輕量級(jí)、嵌入式服務(wù)器框架)。本篇文章將對(duì)llist.h文件中的鏈表宏進(jìn)行逐個(gè)講解。
2022-05-23 12:06:301527 【Linux內(nèi)核】從小小的宏定義窺探Linux內(nèi)核的精妙設(shè)計(jì)
2022-08-31 13:30:061602 關(guān)于實(shí)現(xiàn)增強(qiáng)式 eCall 汽車(chē)設(shè)計(jì),工程師需要了解什么
2022-12-26 10:16:15495 做好準(zhǔn)備:關(guān)于 ESD 和 RF 設(shè)備您需要了解什么
2022-12-26 10:16:24767 公交導(dǎo)乘屏選擇需要了解哪些參數(shù)? 公交導(dǎo)乘屏的應(yīng)用范圍是很廣泛,我們生活的方方面面都有接觸到公交導(dǎo)乘屏,比如:車(chē)載、貨架、機(jī)場(chǎng)、餐廳、多媒體教學(xué)、地鐵站臺(tái)、公交站臺(tái)等。以車(chē)載類(lèi)公交導(dǎo)乘屏為列,車(chē)載
2023-05-23 17:07:28383 又在此基礎(chǔ)之上介紹了針對(duì) socket 文件的相關(guān)操作及其對(duì)應(yīng)在內(nèi)核中的處理流程:
2023-06-12 14:14:10489 。 ????所以,如果需要更透徹的了解設(shè)備樹(shù)解析的細(xì)節(jié),第一步就是需要了解設(shè)備樹(shù)的格式。 二、dtb的由來(lái) ????設(shè)備樹(shù)的一般操作方式是:開(kāi)發(fā)人員根據(jù)開(kāi)發(fā)需求編寫(xiě)dts文件,然后使用dtc將dts編譯成dtb文件。 ????DTB文件是由DTS文件通過(guò)dtc命令編
2023-08-10 16:02:322371 在安裝好的Linux系統(tǒng)中,內(nèi)核的源代碼位于/ust/src/linux.如果是從GNU網(wǎng)站下載的Linux內(nèi)核的tar文件,則展開(kāi)以后在一個(gè)叫linux的子目錄中。以后本書(shū)中談到源文件的路徑時(shí),就總是從linux這個(gè)節(jié)點(diǎn)開(kāi)始。
2023-09-06 17:01:232 替換滾珠螺桿需要了解哪些參數(shù)?
2023-09-08 17:47:15633 在移植Linux內(nèi)核早期時(shí),如果flash等存儲(chǔ)設(shè)備的驅(qū)動(dòng)還沒(méi)寫(xiě)好,可以將文件系統(tǒng)放到內(nèi)存中運(yùn)行。 此時(shí)可以使用 ramfs 和 ramdisk ,即將內(nèi)存的一部分用作文件系統(tǒng)。 ramfs
2023-10-04 14:41:00522 我們?yōu)槭裁?b class="flag-6" style="color: red">需要了解一些先進(jìn)封裝?
2023-11-23 16:32:06281 Linux內(nèi)核移植到RK3399上。 首先,我們需要了解RK3399的硬件架構(gòu)和特性。RK3399采用的是ARM架構(gòu),具有雙核Cortex-A72和四核Cortex-A53處理器,支持
2024-01-08 09:56:13217
評(píng)論
查看更多