原创 測試嵌入式Linux 的啓動時間計算

Tim 的測試軟件工具包:Tim軟件包 Tim Bird 的 grabserial 是一個廣泛使用的工具,可以用於產看串口控制檯輸出的時間信息。這個工具能夠爲收到的每一行信息添加上時間戳,如下面所示: $ sudo ./grabseria

原创 IO多路複用之poll總結

1、基本知識   poll的機制與select類似,與select在本質上沒有多大差別,管理多個描述符也是進行輪詢,根據描述符的狀態進行處理,但是poll沒有最大文件描述符數量的限制。poll和select同樣存在一個缺點就是,包含大量

原创 CAN總線基礎知識(三)

1.CAN協議 1.1 幀類型 通訊時使用下面5個類型的幀:     數據幀     遙控幀     錯誤幀     過載幀     幀間空隙     在所有這些幀中,數據幀和遙控幀由用戶設置,而其它幀則由CAN硬件設置。     數據和

原创 Getting_Started_with_QNX_Neutrino -- Chapter 2:Message Passing

在本章中,我們將介紹QNX Neutrino最具特色的功能,即Message Passing。Message Passing是操作系統微內核架構的核心,爲操作系統提供了模塊化。 A small microkernel and messag

原创 Profile工具-gperftools(一):CPU feature

簡介 gperftools 原名 Google Performance Tools,是一套可以做 profile 的工具,由 google 提供。 目前看來在 Linux 上特別的好使,Windows 基本不能用(官網說 Windows

原创 Writing a Resource Manager -- Chapter 3:Fleshing Out the Skeleton

Chapter 3:Fleshing Out the Skeleton 現在是時候開始爲資源管理器的基本骨骼添加一些內容了。我們將查看您可能必須處理的消息類型,如何設置資源管理器的屬性,如何添加功能以及您應該考慮的一些安全問題。 Mess

原创 CAN與CANOpen(一)

CAN與CANOpen(一)基本概念 CAN與CANOpen(二)報文格式 CAN與CANOpen(三)錯誤處理CAN與CANOpen(四)CANOpen對象字典 CAN與CANOpen(五)PDO和SDOCAN與CANOpen(六)網絡

原创 CAN與CANOpen(二)

CAN與CANOpen(一)基本概念 CAN與CANOpen(二)報文格式 CAN與CANOpen(三)錯誤處理CAN與CANOpen(四)CANOpen對象字典 CAN與CANOpen(五)PDO和SDOCAN與CANOpen(六)網絡

原创 Writing a Resource Manager --Chapter 5:Handling Read and Write Messages

Chapter 5:Handling Read and Write Messages Handling the _IO_READ message io_read處理程序負責在收到_IO_READ消息後將數據字節返回給客戶端。發送此消息的函

原创 (一)uart通信:基於51實現

一、原理簡介   51 單片機內部有一個全雙工串行接口。什麼叫全雙工串口呢?一般來說,只能接受或只能發送的稱爲單工串行;既可接收又可發送,但不能同時進行的稱爲半雙工;能同時接收和發送的串行口稱爲全雙工串行口。串行通信是指數據一位一位地按順

原创 QNX system architecture -- Chapter 5 Multicore Processing

QNX Neutrino RTOS可以在單核或多核系統上運行。 多處理系統可以採用以下形式: Discrete or traditional 具有單獨物理處理器的系統通過板級總線連接在多處理模式下。 Multicore 一個芯片,其中一個

原创 QNX system architecture -- Chapter 3:Interprocess Communication (IPC)

從微內核構建全面的POSIX操作系統,進程間通信起到至關重要的作用。當各種提供服務的進程加到微內核中,IPC做爲粘合層,把這些部件連結成一個緊密的整體。 儘管消息傳遞是QNX Neutrino RTOS IPC的主要形式,還有其他集中形式

原创 Linux系統SPI驅動學習筆記(二)

五. SPI驅動的軟件架構 在內核的SPI驅動的軟件架構中,進行了合理的分層和抽象,如下圖所示: SPI控制器驅動程序 SPI控制器不用關心設備的具體功能,它只負責把上層協議驅動準備好的數據按SPI總線的時序要求發送給

原创 QNX system architecture -- Chapter 2:The QNX Neutrino Microkernel

microkernel實現了嵌入式實時系統中使用的核心POSIX功能,以及基本的QNX Neutrino消息傳遞服務。 有些POSIX功能(如file, device I/O)不是在procnto microkernel中實現的,這些功能

原创 Writing a Resource Manager -- Chapter 2:The Bones of a Resource Manager

Chapter 2:The Bones of a Resource Manager 讓我們從資源管理器的整體結構開始。首先,我們將瞭解客戶端和服務器端的內幕情況。之後,我們將進入資源管理器中的層,然後查看一些示例。 Under the c