原创 Linux下IO多路轉接技術之epoll

在學習linux套接字編程的進階階段,寫下對epoll的一些自己的見解,當然,大部分是來自網絡智慧。 一。什麼是epoll 按照man⼿冊的說法:是爲處理⼤批量句柄⽽作了改進的poll。當然,這不是2.6內核纔有的,它是在2.5.44內核

原创 Shell腳本學習初段--一個進度條程序

相信用過shell腳本的一定會愛上這門腳本語言,因爲它實在是很好用。,Shell有⼀種執⾏命令的⽅式稱爲批處理(Batch),⽤戶事先寫⼀ 個Shell腳本(Script),其中有很多條命令,讓Shell⼀次把這些命令執⾏完,⽽不必⼀條

原创 基於select模型的TCP服務器

之前的一篇博文是基於TCP的服務器和客戶機程序,今天在這我要實現一個基於select模型的TCP服務器(僅實現了服務器)。 socket套接字編程提供了很多模型來使服務器高效的接受客戶端的請求,select就是其中之一。 瞭解select

原创 Linux grep命令常用參數一覽

grep 1.作用  Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用

原创 平衡搜索樹之AVLTree

今天我想要在這裏寫下個人覺得比較難的數據結構---AVL樹的一些些心得。 一。瞭解一種新的數據結構,首先要搞懂它的定義: AVL樹又稱爲高度平衡的二叉搜索樹,是1962年有俄羅斯的數學家G.M.Adel'son-Vel'skii和E.M.

原创 IP數據報的分片和組裝過程

        一份數據從一個主機通過以太網發送到裏一個主機時,是要經過很多層路由轉發的。其中過程相對比較的複雜,在這裏我們要討論的是IP在路由中轉發時是以怎樣的形式轉發的和目的主機在接受到這寫數據報時又是怎樣處理的。        首先

原创 路由表建立策略(算法)

一。路由表的一些介紹: 路由(名詞)數據包從源地址到⽬的地址所經過的路徑,由⼀系列路由節點組成。 路由(動詞)某個路由節點爲數據報選擇投遞⽅向的選路過程。 路由節點⼀個具有路由能⼒的主機或路由器,它維護⼀張路由表,通過查詢路由表來

原创 STL-空間配置器剖析

         網上有很多對於STL空間配置器源碼的剖析,之所以這麼多人去剖析空間配置器,我覺得是真的設計的太好,而且剖析空間配置器的架構的設計對於C++學者來說是一個不錯的提高能力的項目,所以加入到這個解剖大軍中來。       參照

原创 Linux-信號機制詳解(二)

       前面的詳解(一)已經詳細討論了信號的種類,信號產生的條件和信號的阻塞信號,基本上已經對信號的處理方式有了一定的瞭解。今天我們繼續瞭解信號的其他內容。 四。捕捉信號 之前的信號的處理中有提到過捕捉信號,就是通過調用自定義的函數

原创 基於TCP協議的服務器/客戶端程序

作爲傳輸層的主要協議,TCP協議不僅可以支持本地的數據通信,還可以支持跨網絡的進程間通信。 在偌大的互聯網中,我們可以通過“IP地址+端⼜號”標識互聯網中唯一的一個進程。然而,“IP地址+端⼜號”就稱爲socket,這就是網絡socket

原创 System V 信號量機制

      有三種 IPC我們稱作XSI IPC,即消息隊列、信號量以及共享存儲器(共享內存),這就是我麼所說的進程間通信的IPC,有了這些IPC提供給程序的通信接口,實現進程間的通信。     本文主要討論的是信號量的機制。 semg

原创 比KMP高效的Boyer-Moore字符串匹配算法

       在這裏我所要想說的比KMP算法高效的算法是Boyer-Moore算法。        在講解Boyer-moore算法之前,在這裏先回顧一下KMP算法。        比如說有一個字符串"BBC ABCDAB ABCDABC

原创 IPC之消息隊列

    實現linux進程通信的方式有5種: --信號(Singal) --管道(Pipe) --消息隊列(Message) --信號量(Semaphore) 他們都是IPC對象的數據結構。 struct ipc_perm { ke

原创 Linux-信號機制詳解(一)

      之前有寫過SystemV的信號量機制,現在是信號。這裏的信號和前面的信號量是不同的。這裏的信號是進程給操作系統或進程的某種信息,讓操作系統或者其他進程做出某種反應。       信號是進程間通信機制中唯一的異步通信機制,一個進

原创 STL-迭代器源碼剖析

         在接觸了STL後,覺得STL就是一個爲效率而生的怪物,而且令人驚訝的是它裏面的很多算法和模板對於學C++的人來說是非常有價值去剖析的。        迭代器(Iterator)模式--提供一種方法,使之能夠依序尋訪某個聚