原创 CSAPP: Shell Lab

介紹shell Lab的主要目的是爲了讓我們熟悉進程控制和信號。實驗準備下載shell Lab實驗包:原實驗包github鏈接,本文中撰寫的tsh.c全部代碼github鏈接【實驗內容】 是對tsh.c中沒有填寫的函數進行填寫,使得該sh

原创 修改arm開發板的IP地址

修改arm開發板的IP,使用的yaffs2文件系統,修改方法如下:1、修改/etc/init.d/rcS文件在/sbin/ifconfig lo 127.0.0.0下添加一行/sbin/ifconfig eth0 172.23.11.4

原创 【樹莓派開發】樹莓派3B的Qt交叉編譯環境搭建(2)

7.安裝並配置Qt Creator 將樹莓派和Ubuntu連入同一局域網,查看樹莓派的IP地址(博主的樹莓派IP地址爲:192.168.191.2) 運行qt-opensource-linux-x86-5.4.1.run 一路下一步即

原创 談談我對Linux下“生產者/消費者線程模型”的理解

生產者消費者線程模型常常用於網絡編程,即一個線程監聽事件發生(生產者,例如產生“收到數據”事件),其他線程來處理事件(消費者,例如處理收到的數據)比較笨的辦法是: 消費者線程不停地loop等待數據,當生產者線程發現收到數據時,找一個線程(

原创 Linux電子書項目之字符編碼與字符的點陣顯示(1)

一、字符編碼爲更好的存儲和展示,於是出現了字符編碼。下面來看一下字符編碼的發展過程。分爲三個階段:階段1:ASCII碼歐美人發明,用一個字節來標誌。也就是常說的ASCII碼,由於英語中只有26個英文字母,以及常用符號,可以很簡單的編碼出來

原创 Linux網絡編程入門 (轉載)

(一)Linux網絡編程--網絡知識介紹 Linux網絡編程--網絡知識介紹 客戶端和服務端          網絡程序和普通的程序有一個最大的區別是網絡程序是由兩個部分組成的--客戶端和服務器端. 客戶端       

原创 linuix線程的分離狀態(detached)和可結合狀態(joinable)

在任何一個時間點上,線程是可結合的(joinable),或者是分離的(detached)。一個可結合的線程能夠被其他線程收回其資源和殺死;在被其他線程回收之前,它的存儲器資源(如棧)是不釋放的。相反,一個分離的線程是不能被其他線程回收或

原创 動態加載的函數庫Dynamically Loaded (DL) Libraries

動態加載的函數庫Dynamically loaded (DL) libraries是一類函數庫,它可以在程序運行過程中的任何時間加載。它們特別適合在函數中加載一些模塊和plugin擴展模塊的場合,因爲它可以在當程序需要某個plugin模

原创 strcpy、strncpy與memcpy的區別與使用方法

strcpy、strncpy、memcpy這三個C語言函數我們在主機代碼編寫中會很頻繁的使用到,但是三個函數的區別、使用時該注意什麼還是有必要說下的。 本文參考《C 標準庫》編寫。 一、函數說明 1、memcpy函數 void 

原创 C語言裏用結構體和指針函數實現面向對象思想

轉自:http://www.linuxidc.com/Linux/2016-12/138789.htm 一、基礎研究 觀察如下兩個程序a.c和b.c: A.c:   B.c:     這兩個程序都是要實現在屏幕上第10行

原创 使用static與const關鍵字時需要掌握的知識

static: 1、不考慮類,static的作用:     1)第一個作用:隱藏。使得全局變量和函數對其它文件不可見,同時避免了不同文件的命名衝突。     2)第二個作用:默認初始化爲0。未初始化的全局靜態變量和局部靜態變量都保存在B

原创 劍指offer-操作給定的二叉樹,將其變換爲源二叉樹的鏡像

劍指offer:操作給定的二叉樹,將其變換爲源二叉樹的鏡像  /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *righ

原创 Linux電子書項目之電子書的實現及框架優化(3)

一、整體思路採用分層的思想,面向對象的編程思想。1、怎樣在LCD上顯示一個文件2、如何組織代碼分層的結構main--draw--XXX_manager--fb.c等二、分層編寫-底層實現1、顯示部分代碼編寫[cpp] view plain

原创 基於QT和OpenCV的人臉檢測識別系統(2)

緊接着上一篇博客的講第二步是識別部分人臉識別 把上一階段檢測處理得到的人臉圖像與數據庫中的已知 人臉進行比對,判定人臉對應的人是誰(此處以白色文本顯示)。人臉預處理現在你已經得到一張人臉,你可以使用那張人臉圖片進行人臉識別。然而,假如你嘗

原创 gdb調試多進程和多線程命令(結合例子)

1. 默認設置下,在調試多進程程序時GDB只會調試主進程。但是GDB(>V7.0)支持多進程的分別以及同時調試,換句話說,GDB可以同時調試多個程序。只需要設置follow-fork-mode(默認值:parent)和detach-on-