原创 Redis安裝配置與啓動停止

        Redis是一個開源、高性能、基於鍵值對的緩存與存儲系統,與 關係型數據庫不同,作爲NoSql的Redis數據庫,其將所有的數據都存儲在內存中,這就使得Redis 的讀寫速度遠遠高於mysql/Oracle等關係型數據庫,

原创 第五載:預定義變量的使用

    在makefile中,存在一些預定義的變量,我們可以直接使用他們,預定義的變量可分爲自動變量與特殊變量      1、 自動變量         $@  表示目標         $^    表示目標的所有依賴         $

原创 常用設計模式之 - 工廠設計模式(簡單工廠、工廠方法、抽象工廠)

    工廠模式是最常用的創建型模式之一,在開始工廠模式之前,我們先來看一個場景,假如要設計一個電腦類,生成的電腦對象要包含CPU,那麼可能有人會這麼設計: class PC { private: string m_CPU; p

原创 排序算法之 - 歸併排序

    這一章節所講的歸併排序,跟希爾排序一樣,也是一種效率很高的排序方法,也同樣採用了分而治之的方法. 歸併排序的基本思想爲:先把無序序列一分爲二,然後分別對兩邊的序列進行排序,最後再整合兩邊已經排好的序列.下邊已一張圖來展示歸併排序的

原创 第一載:初識make與makefile

    我們寫程序完成後,都需要進行編譯才能運行,在一些集成的IDE(如vs2010、QT等),都提供有一鍵編譯的功能,整個編譯過程(預處理、編譯、鏈接),IDE已經幫我們屏蔽了。但是在嵌入式或Linux平臺下的開發,基本都是通過make

原创 第八載:makefile中函數定義及調用

    在Makefile中,是支持函數使用的,Makefile中的函數包括make解釋器自身預定義的函數,同時也支持我們自己定義函數。 在Makefile中, 通過define關鍵字來實現函數的自定義,並以endef關鍵字結束,自定義函

原创 第六載:makefile變量的高級主題

    在makefile中,我們已經知道變量的基本賦值方法、使用等,但是在makefile中,變量還有一些高級的屬性,掌握這些屬性,可以使編寫的makefile更加高效,現在就來了解下makefile中變量的高級屬性     一、變量值

原创 第三載:makefile中的僞目標

    在前邊的兩個章節中,我們提到了makefile中的目標,並且知道這個目標存在且依賴沒有更新,make就不再編譯程序。 一般在默認的情況下     - make 認爲目標對應着一個文件(可執行程序、so庫等等)     - 比較目標

原创 第七載:makefile中的條件判斷

    makefile跟編程語言一樣,也支持條件判斷,方式大同小異,makefile條件判斷語句的語法如下: 雖然有集中形式,但是推薦使用第一種,其比較符合我們的編程習慣(尤其從事C/C++派系的工作人員),需要注意的是,ifxxx前邊

原创 第二載:makefile的結構

    在上一篇中,我們只是簡單的介紹了make跟makefile的基本概念,並且實現了一個簡單的makefile,但是那個makefile僅僅是做一些打印工作,並沒有什麼實際性用途。在編寫真正可用的makefile前,我們先來了解下ma

原创 第四載:makefile中變量的賦值方式

    makefile類似於腳本程序,當然也支持程序裏邊變量的概念,makefile中的變量只是文本數據(字符串),沒有C語言中的數字等,並且大小寫敏感。     makefile中的變量有4種賦值方式:     - 簡單賦值( :=

原创 第四載、FAT12文件系統剖析2

在上一章節《FAT12文件系統剖析1》中,我們把a.img啓動軟盤使用FreeDos系統格式化爲FAT12文件系統的組織方式,並且向a.img軟盤寫入兩個文件,同時通過FreeDos操作系統也查看了a.img軟盤中的文件。之所以這麼做,是

原创 第三載、FAT12文件系統剖析1

在上一篇文章中,我們完成了一個簡單的主引導程序的編寫及運行,但有限制的是:主引導程序不能超過512字節!然而操作系統的程序,明顯不止512字節,爲了突破這個限制,主引導可以採用如下改造策略:         1、完成最基本的初始化工作  

原创 第二載、第一個操作系統程序,"Hello OS" 嚐鮮

《彖》曰:屯,剛柔始交而難生。《易經》的屯掛,講述的是萬物始生,充滿艱難險阻,然而順時應運,必欣欣向榮,故屯掛也叫做始生之掛。  任何事物,都必須經歷一個艱難的開始,方有可能守得雲開見月明,當然操作系統學習也不例外。         學編

原创 第一載、初識操作系統

    易經有云:“伏羲一劃開天地,太極生兩儀,兩儀生四象,四象生八卦”,而八卦的種種組合,得到六十四卦,世間萬物都可以用這六十四卦來解釋。     軟件開發與易經描述的卦象,有異曲同工之處,現今種類繁多的編程語言、開發框架,好比六十四卦