原创 嵌入式內核及驅動開發之學習筆記(一) 認識與使用驅動模塊

應用層的進程是通過內核層驅動來訪問硬件的,Linux內核源碼在每次編譯之後生成一個總的鏡像,將鏡像加載內存中運行並使用(內核在系統運行時會移植佔用內核空間)。驅動屬於內核源碼的一部分,如果每次修改驅動都要重新編譯加載內核的話,這態麻煩了,

原创 嵌入式內核及驅動開發之學習筆記(二) 實現應用控制驅動

Linux系統根據驅動程序實現的模型框架將設備驅動分成字符設備驅動、塊設備驅動、網絡設備驅動三大類。這裏簡單理解一下概念 字符設備:設備按字節流處理數據,通常用的串口設備、鍵盤設備都是這種。 塊設備:設備按塊單位對數據處理,通常是存儲設備

原创 嵌入式系統移植筆記(八) --製作rootfs

Linux內核啓動後,需要掛載根文件系統。本章介紹文件系統的製作過程,並且讓開發板通過網絡遠程掛載nfs系統來驗證製作的rootfs。。   文件系統格式 上面不同的文件系統格式,有適合不同的應用場合。nfs rootfs,實際nfs是

原创 嵌入式系統移植筆記(七) --第三方驅動移植(黑盒子移植)

由於嵌入式系統分層,應用層要想操作硬件需通過內核層。驅動對上提供系統調用函數,對下封裝了對底層硬件的一些基本操作。筆者目前不瞭解驅動程序的編輯,所以本章是在已經有驅動程序(fs4412_led_drv.c)和對應的應用程序(fs4412_

原创 嵌入式系統移植筆記(六) --內核移植

  硬件環境 開發板 FS4412(華清遠見的板子,基於Cortex-A9的處理器) PC機 Ubuntu系統 (Linux大家庭中一個發行版) 網線 (速度較快,通過網絡xieyi協議傳輸文) 串口線(與開發板進行命令交互)   前提

原创 嵌入式系統移植筆記(四) --認識Linux內核

Linux內核概念 從技術上說 linux 是一個內核,而一個內核不是一套完整的操作系統。通常我們使用的 linux 系統是一個集 linux 內核、工具集、各種庫、桌面管理器、應用程序等一體的一個發佈包 (發行版)‏。 對於一個嵌入式

原创 嵌入式系統移植筆記(五) --內核的配置和編譯

現在Linux內核源碼的ARM體系結構已經引入了設備樹的概念。設備樹是描述硬件的數據結構,將之前配置在內核源碼中的一部分提取出來。所以分別對內核和設備樹文件進行配置和編譯。本章節仍然以三星的exy4412芯片爲例。 通過內核的配置文件可以

原创 嵌入式系統移植筆記(一) --搭建開發環境

在嵌入式產品中,操作系統充當硬件資源的管理員的角色,對下有硬件層採集信息或者執行功能,對上還需爲應用程序提供適合的API接口以便調用。有着承上啓下的重要作用。具體硬件產品用公司或者提供商設計,移植系統時,上層跑什麼應用程序也不必操心,我

原创 嵌入式系統移植筆記(二) --認識U-BOOT

內容 bootloader概念與啓動過程介紹 U-Boot概念 U-Boot常用命令 U-Boot環境變量 U-Boot目錄分析 U-Boot編譯,使用   Bootloader:在操作系統內核或用戶應用程序運行之前運行的一小段代碼。

原创 嵌入式系統移植筆記(三) --分析U-Boot

對於exynos4412的U-Boot的說明 我這邊開發板使用了三星的exynos4412芯片,它比較特殊的之處是,啓動分爲4個階段: BL0 --> BL1 --> BL2 --> U-Boot BL0: ARM的起始地址都是0地址,

原创 TCP/IP學習筆記(5)-IP選路

轉載於:Linux就該這麼學   靜態IP選路 一個簡單的路由表 選路是IP層最重要的一個功能之一。前面的部分已經簡單的講過路由器是通過何種規則來根據IP數據包的IP地址來選擇路由。這裏就不重複了。首先來看看一個簡單的系統路由表。 De

原创 TCP/IP學習筆記(10)-tcp連接的建立與終止

轉載於:Linux就該這麼學     TCP連接的建立可以簡單的稱爲三次握手,而連接的中止則可以叫做四次握手。 TCP是一個面向連接的協議,所以在連接雙方發送數據之前,都需要首先建立一條連接。這和前面講到的協議完全不同。前面講的所有協議

原创 TCP/IP學習筆記(3)-IP、ARP、RARP協議

轉載於:Linux就該這麼學     把這三個協議放到一起學習是因爲這三個協議處於同一層,ARP協議用來找到目標主機的Ethernet網卡Mac地址,IP則承載要發送的消息。數據鏈路層可以從ARP得到數據的傳送信息,而從IP得到要傳輸的數

原创 TCP/IP學習筆記(7)-廣播,多播IGMP協議

轉載於:Linux就該這麼學   單播,多播,廣播的介紹 單播(unicast) 單播是說,對特定的主機進行數據傳送。例如給某一個主機發送IP數據包。這時候,數據鏈路層給出的數據頭裏面是非常具體的目的地址,對於以太網來 說,就是網卡的MA

原创 2018/11/3小結

看了大半天教學視屏,對於其中描述的一堆“亂七八糟”的理論概念,頭腦一直處於似懂非懂的狀態。有時候覺得那裏有些不對勁,問問題卻又找不到問題的所在點。。。 走出臥室,隨便走走,散散心情。給家裏打個電話,恰好家人正在忙碌工作,沒幾分鐘結束了通話