ARM嵌入式系統(tǒng)中內(nèi)存對齊的重要性
做嵌入式系統(tǒng)軟件開發(fā),經(jīng)常在代碼中看到各種各樣的對齊,很多時(shí)候我們都是知其然不知其所以然,知道要做好....

內(nèi)存管理的硬件結(jié)構(gòu)
常見的內(nèi)存分配函數(shù)有malloc,mmap等,但大家有沒有想過,這些函數(shù)在內(nèi)核中是怎么實(shí)現(xiàn)的?換句話....

串口驅(qū)動(dòng)分析之serial driver
前兩節(jié)我們介紹串口驅(qū)動(dòng)的框架和tty core部分。這節(jié)我們介紹和硬件緊密相關(guān)的串口驅(qū)動(dòng)部分。

Linux內(nèi)核中頁表映射的基礎(chǔ)知識(shí)
大家在看內(nèi)核代碼時(shí)會(huì)經(jīng)常看的以上術(shù)語,但在ARM的芯片手冊中并沒有用到這些術(shù)語,而是使用L1,L2,....

操作系統(tǒng)的內(nèi)存布局介紹
32位操作系統(tǒng)的內(nèi)存布局很經(jīng)典,很多書籍都是以32位系統(tǒng)為例子去講解的。32位的系統(tǒng)可訪問的地址空間....

buffers內(nèi)存與cached內(nèi)存的區(qū)別
free 命令是Linux系統(tǒng)上查看內(nèi)存使用狀況最常用的工具,然而很少有人能說清楚 “buffers....

pstore原理和使用方法總結(jié)
pstore最初是用于系統(tǒng)發(fā)生oops或panic時(shí),自動(dòng)保存內(nèi)核log buffer中的日志。不過....

內(nèi)聯(lián)函數(shù)定義 為什么需要內(nèi)聯(lián)函數(shù)
inline關(guān)鍵字是C99標(biāo)準(zhǔn)的型關(guān)鍵字,其作用是將函數(shù)展開,把函數(shù)的代碼復(fù)制到每一個(gè)調(diào)用處。
Linux的確實(shí)挺復(fù)雜的
對于稍有些系統(tǒng)編程經(jīng)驗(yàn)的 Linux 開發(fā)者來說,難點(diǎn)往往在于,缺乏對底層技術(shù)的透徹理解,而不能自如....
硬件工程師設(shè)計(jì)出錯(cuò)是種什么體驗(yàn)?
我有一次,那時(shí)候還是創(chuàng)業(yè)時(shí)期,整個(gè)研發(fā)我一個(gè)人說的算,又一次畫一個(gè)圓形的PCB。把直徑當(dāng)成半徑了,我....

ifconfig up后內(nèi)核網(wǎng)絡(luò)驅(qū)動(dòng)做了什么?
最近在排查一個(gè)網(wǎng)絡(luò)問題,ifconfig eth0 up 后,網(wǎng)卡link up比較慢。因此,分析了....
分享一款精小調(diào)試支持庫:dbuglib
嵌入式開發(fā)過程中,調(diào)試是必不可少的一個(gè)環(huán)節(jié)。怎樣調(diào)試才能快速定位代碼的問題呢?方法有很多,今天給大家....
kprobes的使用方法
上一節(jié)介紹了kprobe的基本概念,下面我們將使用幾個(gè)具體的例子,看下kprobe在實(shí)際使用中有那些....
使用TRACE_EVENT定義tracepoint的方式
內(nèi)核的各個(gè)子系統(tǒng)已經(jīng)有大量的跟蹤點(diǎn),如果這些跟蹤點(diǎn)無法滿足工作中的需求,可以自己手動(dòng)添加跟蹤點(diǎn)。
Ftrace使用tracefs文件系統(tǒng)保存控制文件
Ftrace是Linux Kernel的官方tracing系統(tǒng),支持Function trace、靜....
Linux內(nèi)核調(diào)試的方式以及工具集錦
內(nèi)核總是那么捉摸不透, 內(nèi)核也會(huì)犯錯(cuò), 但是調(diào)試卻不能像用戶空間程序那樣, 為此內(nèi)核開發(fā)者為我們提供....
netconsole的使用簡介
netconsole模塊可以讓printk信息(輸出到控制臺(tái)的信息)通過網(wǎng)絡(luò)(UDP)發(fā)送到遠(yuǎn)程主機(jī)....
ARMv8-A系統(tǒng)中的安全
舉一個(gè)生活中的例子,可信系統(tǒng)存儲(chǔ)了移動(dòng)支付的密碼,數(shù)字證書等。在開放的系統(tǒng)中,很難實(shí)現(xiàn)絕對安全,因?yàn)?...
sysRq鍵使用方法
SysRq鍵是一個(gè)魔術(shù)案件,只要在內(nèi)核沒有完全卡死的情況下,內(nèi)核都會(huì)相應(yīng)SysRq 鍵的輸入,使用這....
對GDB命令腳本做一個(gè)粗淺的介紹
在shell下敲gdb命令即可啟動(dòng)gdb,啟動(dòng)后會(huì)顯示下述信息,出現(xiàn)gdb提示符。
一位讀者邏輯清晰的提問
數(shù)據(jù)結(jié)構(gòu)嚴(yán)蔚敏書籍看完,你的pdf數(shù)據(jù)結(jié)構(gòu)部分全部看完,pdf對應(yīng)的力扣題目全部做完,劍指offer....
使用動(dòng)態(tài)輸出打印內(nèi)核的DEBUG信息
printk()是很多嵌入式開發(fā)者喜歡用的調(diào)試手段之一,但是,使用printk()每次都要重新編譯內(nèi)....
內(nèi)核轉(zhuǎn)儲(chǔ)的設(shè)置
當(dāng)程序運(yùn)行的過程中異常終止或崩潰,操作系統(tǒng)會(huì)將程序當(dāng)時(shí)的內(nèi)存狀態(tài)記錄下來,保存在一個(gè)文件中,這種行為....
如何利用ChatGPT幫你寫代碼?
最近爆火的ChatGpt相信大家都不陌生,聽說它還能寫代碼,而且能力不凡。作為合格的嵌入式軟件工程師....