Nuttx作業系統學習(一)

2021-10-08 13:37:45 字數 1122 閱讀 5235

一、初識nuttx

nuttx的官方介紹鏈結

nuttx是一種實時嵌入式作業系統 (real time operating system),從8位擴充套件到32位微控制器環境,nuttx中的主要控制標準為posix 和 ansi標準。

【實時作業系統】能夠在外界事件或資料產生時,接受並以足夠快的速度予以處理,其處理結果又能在規定事件內來控制生成過程或對系統做出快速響應,排程一切可利用的資源完成實時任務,並控制所有實時任務協調一致執行。(快速響應、統籌排程)

【posix】portable operating system inte***ce,意為可移植作業系統介面,是電氣和電子工程師協會(ieee)為要在unix作業系統上執行軟體,而定義應用程式介面(api)的一系列相互關聯的標準的總稱。

二、nuttx系統的結構分層及各層作用

2.1 nuttx結構分層

virtual file system (虛擬檔案系統)

upper half drivers (上層驅動)

lower half drivers (下層驅動)

microcontroller + peripherals (微控制器+外設)

2.2 各層功能

virtual file system:即檔案作業系統,linux中一切皆檔案。該層主要作用是將對裝置的操作,轉化為對虛擬檔案的操作。

upper half drivers :這層驅動實現的是對各種裝置的操作介面的定義,比如pwm,network,graphics等,可以認為是系統的api。位置在 nuttx / include / drivers 中。

lower half drivers :是對於上層驅動的具體實現,這層驅動提供的api直接操作各種晶元。

microcontroller + peripherals:各種硬體。

三、開發步驟

系統移植:根據需要將nuttx系統移植到開發板。

建立並初始化裝置:分析你的應用程式需要哪些裝置,建立並初始化你所需要的裝置,在configs / / src / * 下的c檔案中編寫。

下面打算根據自己的經歷來舉例簡單談談nuttx系統的移植和應用程式的編寫,請見下篇。

作業系統學習(一)

作業系統發展歷史 典型作業系統型別 分時作業系統的衍化 基本功能 程序管理 cpu管理 記憶體管理 裝置管理 檔案管理 作業系統發展的四個典型階段 手工操作 無作業系統 電子管時代 單道批處理系統 電晶體時代 多道批處理系統 分時系統 單道批處理系統 程式的裝入和撤出 自動完成,效率高 工作特點 批...

作業系統學習

看了幾天的資料,今天終於有時間把測試環境搭建起來。模擬機bochs nasm ultraiso 模擬機bochs的設定不難,在網上搜了些資料和參考了bochs的說明檔案,基本上就可以組建並執行起來。在網上下了個dos的映象,執行bochs從a盤啟動,之後把硬碟分割槽格式化,乙個最基礎的測試環境就完成...

作業系統學習

1 處理器硬體故障中斷事件 由處理器,記憶體儲器,匯流排等故障引起 程式性中斷事件 2 處理器執行機器指令引起 1.1 除數為零,運算元溢位等算術異常 1.3 終止程序指令 終止程序 3 自願性中斷事件 1.1 處理器執行陷入指令請求os服務引起 1.2 請求分配外設,請求io等 1.3 處理流程是...