原创 ubifs文件系統製作與移植

UBIFS文件系統使用 1, UBIFS簡介 在linux-2.6.27以前,談到Flash文件系統,大家很多時候多會想到cramfs、jffs2、yaffs2等文件系統。它們也都是基於文件系統+mtd+flash設備的架構。

原创 內核日誌及printk結構淺析

  這段時間複習了一下內核調試系統,注意看了一下printk的實現以及內核日誌的相關知識,這裏做一下總結。 一、printk概述     對於做Linux內核開發的人來說,printk實在是再熟悉不過了。內核啓動時顯示的各種信息

原创 QT 簡單的網絡通信(tcp ,udp)

最近要用到Qt的Socket部分,網上關於這部分的資料都比較複雜,我在這總結一下,把Socket的主要部分提取出來,實現TCP和UDP的簡單通信。 1.UDP通信 UDP沒有特定的server端和client端,簡單來說就是向特定的

原创 ARM9 2410移植之ARM中斷原理, 中斷嵌套的誤區,中斷號的怎麼來的

    ARM有七種模式,我們這裏只討論SVC、IRQ和FIQ模式。      我們可以假設ARM核心有兩根中斷引腳(實際上是看不見的),一根叫 irq pin, 一根叫fiq pin.      在ARM的cpsr中,有一個I位和一個F

原创 C++設計模式

目錄(?)[+] 一、設計模式的分類 總體來說設計模式分爲三大類: 創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。 結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀

原创 STL的缺點

作者:姚冬 鏈接:https://www.zhihu.com/question/20201972/answer/41324520 來源:知乎 著作權歸作者所有,轉載請聯繫作者獲得授權。說幾個STL的缺點吧,雖然都是在比較極端的情況下出現,

原创 一些靜態查找算法

查找表(Search table)是由同一類型的數據元素(或記錄)構成的集合。關鍵字(key)是數據元素中某個數據項的值,又稱爲鍵值,用它可以表示一個數據元素,也可以標識一個記錄的數據項(字段),稱之爲關鍵碼。若此關鍵字可以唯一地標識一個

原创 Qt的事件分發過程

看了篇文章,說先要子類化QEvent,然後定義自己的QEvent::Type,然後重寫QWidget::event()函數,然後就可以調用QCoreApplication::sendEvent()或者QCoreApplication:;

原创 linux下面實現檢測按鍵(Linux中kbhit()函數的實現)

在linux下面實現檢測按鍵(Linux中kbhit()函數的實現)   #include <stdio.h> #include <termios.h> #include <term.h> #include <curses.h>

原创 QT 容器

[+] QT不僅支持C++的STL模板庫,同時自己也定義了一套容器類和與之操作的算法類,使用QT定義的這一套庫,可以使在各個平臺的表現相同。QT的這些容器被設計爲更輕便,更安全和更容易使用。容器類是隱含共享(implicitly)的,可重

原创 Qt之JSON生成與解析

Qt之JSON生成與解析 轉載▼ 標籤: qt qjson qjsondocument qjsonobject qjsonarray 分類:Qt     JSON(JavaScript ObjectNotation)是一種輕量級

原创 檢測按鍵(Linux中kbhit()函數的實現)

我轉載的網址來源http://hi.baidu.com/weihuili5/blog/item/3c9d1a012a84a30d738da527.html 編寫過MS-DOS程序的人通常都會查找Linux下等同於kbhit的函數,這個函

原创 gdb+gdbserver的方式進行ARM程序調試

gdb+gdbserver的方式進行ARM程序調試 【摘要】:本文首先介紹了gdb+gdbserver相關的概念,然後介紹了其下載、編譯、安裝等過程;接着介紹了利用gdb+gdbserver調試應用程序的流程及實例等;最後分析了下gdb

原创 qt4.8到qt5.2windows版本的升級遇到的實際問題.

背景:     新項目中的qt用了比較新的qt5.2.1版本,本人之前一直用qt4.8.2,後來在家把項目拷貝後發現各種報錯各種構建問題,起初是環境變量的問題各種qtcreator的設置和各種windows環境變量的設置,後來發現連“<Q

原创 嵌入式環境下的gdb調試方法

 採用GDB方法調試,由於嵌入式系統資源有限性,一般不能直接在目標系統上進行調試,通常採用gdb+gdbserver的方式進行調試。目標系統必須包括gdbserver程序,宿主機也必須安裝gdb程序。在此我們還不能直接採用linux發行