原创 慢慢欣賞linux kbuild構建

.config 與 include/config/auto.config的差別: 後者是前者生成的。 .config => include/config/auto.config 例如:     後者並過濾掉非使能的選擇,例如 #CONFI

原创 慢慢欣賞linux if_changed_xxx的作用

編譯內核會生成很多臨時文件,以 o.cmd爲後綴。 打開看發現是編譯腳本。 這些文件是在scripts/makefile.build文件通過如下編譯宏實現: define rule_cc_o_c $(call echo-cmd,che

原创 專家講座總結之20200620

metux lock鎖CPU之外的公共資源,公共資源被佔用,則CPU CORE可以忙別的; spin lock鎖CPU CORE,所以無法獲取資源,則CPU CORE只能打轉,不能跑別的東東。   down/up屬於重量級,可以用wait

原创 微視linux scsi驅動超時錯誤處理

超時錯誤處理從底層看起 int usb_stor_control_thread(void * __us) { for(;;) { us->proto_handler(us->srb, us); =>void usb_stor

原创 mips指令學習

func daddiu sp, sp, -64 //通過加法建立棧幀 lui v0, 0x815a //bit[31]爲1,如果內核態是64位的話,那麼如果bit[31]爲1,則將高32位擴展爲ffffffff, 也就是說對於64位

原创 微視linux jffs2文件系統

  jffs2文件系統——概述 https://blog.csdn.net/fenglifeng1987/article/details/8461955

原创 數據結構與算法之圖的DFS算法

  圖的遍歷(搜索)算法 之 深度優先遍歷算法 https://blog.csdn.net/zuihongyan518/article/details/80823924

原创 微視linux 通用塊層之bio

int mpage_readpages(struct address_space *mapping, struct list_head *pages, unsigned nr_pages, get_block_t get_blo

原创 微視linux 進程的當前目錄

先做一個實驗 創建一個死循環小程序 [zl@localhost test]$ pwd /home/zl/test [zl@localhost test]$ vi test.c #include <stdio.h> int main(int

原创 微視linux內核 x86_32內核啓動

  Linux啓動過程的內核代碼分析 https://www.cnblogs.com/long123king/p/3545991.html 第二次啓動保護模式 https://blog.csdn.net/yunsongice/articl

原创 數據結構與算法 遞歸的理解

2018-03-13 對於遞歸的理解與遞歸應用 https://www.jianshu.com/p/fb94ae5b5ff0?utm_campaign=maleskine&utm_content=note&utm_medium=seo_n

原创 微視linux 文件系統之打開文件create模式

struct file *do_last(struct nameidata *nd, struct path *path, int open_flag, int acc_mode, int mode, con

原创 微視linux 根文件系統之一 虛擬根文件系統的創建

void __init mnt_init(void) { init_rootfs(); =>int __init init_rootfs(void) { err = register_filesystem(&rootfs_fs

原创 慢慢欣賞linux 內核符號

內核符號之獲得內核符號地址1__symbol_get https://blog.csdn.net/yldfree/article/details/80884367  

原创 慢慢欣賞linux ext3文件系統 獲取日誌塊

void journal_commit_transaction(journal_t *journal) { err = journal_submit_data_buffers(journal, commit_transaction,