原创 Linux驅動開發(1)------- 以最簡單的驅動模塊開啓驅動開發之路

這裏寫目錄標題一,開啓驅動開發之路二,最簡單的模塊源碼分析三,用開發板來調試模塊 一,開啓驅動開發之路 1、驅動開發的準備工作 (1)正常運行linux系統的開發板。要求開發板中的linux的zImage必須是自己編譯的,不能

原创 C++學習筆記(4)------- C++的內存管理

目錄爲什麼要研究內存管理C++可用內存區域智能指針的簡單引入Java的垃圾回收機制介紹 爲什麼要研究內存管理 1、程序就是數據加算法 (1)寫程序是爲了解決某個問題,生活中的問題最終被計算機抽象爲控制或運算 (2)CPU中的主

原创 C++學習筆記(3)------- C++新增和有變化的關鍵字

目錄1.C++的bool關鍵字2.C++的字符類型char3.C++中無變化關鍵字和運算符代用關鍵字4.C++新增的引用5.C++的enum枚舉6.C++的共用體union7.inline關鍵字8.C++11引入的nullptr9

原创 C++學習筆記(1)------- 命名空間

目錄命名空間的引入namespace的初級定義和使用1、同一文件內定義和使用命名空間2、不同C文件間定義和使用命名空間3、默認命名空間4、匿名命名空間的定義和使用5、嵌套命名空間的定義和使用 命名空間的引入 1、C語言如何解決

原创 Linux應用編程和網絡編程(11)-------TCP/IP協議的簡單學習與應用socket接口編程

目錄一,TCP協議的簡單學習二,socket編程接口介紹三,IP地址格式轉換函數實踐四,網絡編程實戰 1.網絡的分層結構 因爲網絡是一種非常複雜的通信方式,所以要通過分層來進行開發難度的降低。因此我們在研究網絡通信時,一定要在同一

原创 Linux應用編程和網絡編程(9)------- 線程同步的簡單應用

目錄一,線程的引入二,線程常見函數三,線程同步的簡單使用1.線程同步之信號量2.線程同步之互斥鎖3.線程同步之條件變量 一,線程的引入 再論進程 1、多進程實現同時讀取鍵盤和鼠標 #include <stdio.h> #incl

原创 Linux應用編程和網絡編程(10)------- 網絡的基礎知識

目錄一,有關網絡設備的功能簡單介紹二,網絡有關的詞:DNS,DHCP,NAT解釋三,IP地址基礎四,OSI 7層網絡模型 一,有關網絡設備的功能簡單介紹 1、網卡 (1)計算機上網必備硬件設備,CPU靠網卡來連接外部網絡 (2)

原创 Linux應用編程和網絡編程(8)-------Linux中的高級IO

目錄一,非阻塞IO與阻塞式IO二、併發式阻塞IO的解決1、非阻塞式IO2、IO多路複用2.1、IO多路複用的原理2.2、IO多路複用的使用3、異步IO4、存儲映射IO 一,非阻塞IO與阻塞式IO 1. 非阻塞式IO和阻塞式IO的

原创 Linux應用編程和網絡編程(7)------- linux中的信號

目錄一,什麼是信號二,Linux中常見信號介紹三,進程對信號的處理四,alarm和pause函數 一,什麼是信號 1、信號是內容受限的一種異步通信機制 (1)信號的目的:用來通信 (2)信號是異步的(對比硬件中斷) (3)信號本

原创 Linux應用編程和網絡編程(6)------- 進程全解之進程狀態,進程關係,進程通信

目錄一,進程狀態和進程關係二,守護進程1.守護進程的引入2.編寫簡單守護進程3.使用syslog來記錄調試信息4.讓程序不能被多次運行三,進程間通信linux內核提供多種進程間通信機制 一,進程狀態和進程關係 1、進程的5種狀態

原创 ubuntu14.04 搭建 tftp 服務器

ubuntu 搭建 tftp 服務器 來源於朱有鵬物聯網大講堂的嵌入式開發環境搭建 第 1 步:安裝 tftp 安裝 tftp 所需的軟件。首先需要安裝 tftp-hpa,tftpd-hpa,前者是客戶端,後者是服務程序。在終

原创 Uboot和系統移植(18)-------- 根文件系統的原理

目錄一,根文件系統概述二,根文件系統的形式三,自己製作ext3格式的根文件系統四,nfs方式啓動自制簡易文件夾形式的rootfs五,到底什麼是linuxrc六,最小的文件系統有什麼七,VFS簡介 一,根文件系統概述 1、爲什麼需

原创 Linux應用編程和網絡編程(5)------- 進程全解之父子進程

目錄一,程序的開始和結束二,進程的引入三,父子進程1.fork創建子進程2.父子進程對文件的操作3.進程的誕生和消亡4.父進程wait回收子進程wait函數介紹waitpid介紹5.exec族函數及實戰 一,程序的開始和結束 1

原创 Linux應用編程和網絡編程(4)------- 系統信息的獲取

目錄一,關於時間的概念二,linux系統中的時間三,時間相關API實戰四,linux中使用隨機數五,proc文件系統介紹與使用1.proc文件系統介紹2.proc文件系統的使用 一,關於時間的概念 1、GMT時間 (1)GMT是

原创 Uboot和系統移植(16)------- Linux內核的啓動過程

目錄一,makefile和鏈接腳本的簡單分析二,head.S文件分析1.前段分析2.內核啓動的彙編階段分析3.內核啓動的C語言階段分析3.1內核啓動文件main.c -------> Do necessary setups3.2