原创 mknod命令 linux

      個人覺得linux的軟件設計思想異常強大,比如把所有的設備都當做文件來處理,大大簡化了程序員的負擔,向提出這個思想的大神s致敬!! 先來看看linux系統中設備管理的基本知識:       我們的linux操作系統跟外部設備(

原创 使用select喚醒睡眠中的線程

有時我們需要使用多線程每隔一定時間自動去完成一些特定的工作,但有時我們也需要線程在某種情況發生時,從睡眠中喚醒並立即去完成工作,這時 sleep就顯得無能爲力了,但這正是select登場的時候。 這裏我們就不介紹select的用法

原创 帶超時的system

工作中,需要使用tftp等協議下載一些文件,但這時候遇到一個問題就是當tftp的服務器沒有打開時,system函數會阻塞較長時間(長達數秒),這時候首先想到的就是設置tftp的超時參數,但因爲還有很多協議也有超時返回的需求,我就想

原创 linux冷知識之打開防火牆的特定端口[待完善]

在centos系統中,文件/etc/sysconfig/iptables保存着防火牆的配置信息,我們可以修改裏面的信息以打開或關閉具體端口(因爲時間問題,未完待續)

原创 常量指針與指針常量的區別(轉帖)

三個名詞雖然非常繞嘴,不過說的非常準確。用中國話的語義分析就可以很方便地把三個概念區分開。 一) 常量指針。 常量是形容詞,指針是名詞,以指針爲中心的一個偏正結構短語。這樣看,常量指針本質是指針,常量修飾它,表示這個指針乃是一個指向常量

原创 linux冷知識之查看可執行文件依賴的動態庫[待補充]

使用ldd命令如可執行文件爲a.out,則執行ldd a.out

原创 mysql數據庫基礎總結

此博文中的內容是學習mysql的筆記,現在拿出來和大家分享。另外所有內容均是在centos下實驗的,其中sampdb數據庫可以在http://www.kitebird.com/mysql-book/中找到,第一次發博文歡迎大家批評指導,

原创 套接字學習之tcp連接的建立

已經看過很多遍的網絡編程相關內容,但一次偶然的面試總居然發現已經忘得七七八八甚至還不如剛出校門時,於是覺得不能再眼高手低了, 需要重新拿起書本複習複習,所以就有了下面的博文,希望我能堅持學習,堅持努力。 tcp連接的建立總的來說就是

原创 connect調用失敗後需關閉描述符

connect函數原型        #include <sys/socket.h>        int connect(int socket, const struct sockaddr *address,        

原创 sed單引號使用

首先,我保證下面經過實踐證明正確的 試驗待處理文件: test.file 內容: 'Inherent' 腳本: sed_single_quote.sh #!/bin/bash file_array="test.file" for fil

原创 哪種方法效率更高或更可讀

來由:閱讀lighttpd源碼時,發現lighttpd申請特定倍數內存時,使用的方法較爲晦澀,於是,就想對比自己以前在閱讀git源碼時學到的方法,感覺git的方法更勝一籌 lighttpd方法: #define BUFFER_PIECE

原创 函數工作原理

*函數由多個部分組成:* 1.函數名 函數名是函數開始地址的一個標籤 2.參數 函數的參數是給函數處理的資料,是函數中的變量。比如,在數學中,有個sine函數。如果你想讓計算機計算2的正弦值,那麼你可以調用函數名爲si

原创 鏈接時 庫在命令行位置的影響

請看下面的Makefile文件 這是一個不一定好 但能正常工作的Makefile,但我曾困惑爲什麼下面的會編譯出錯 上面最本質的變化是庫在可重定位文件(即.o文件)之前出現,慢慢的隨着知識的對鏈接時符號解析規則的瞭解知道了其中

原创 dp學習之BadNeighbors解法

這是來自Topcoder的一道動態規劃有關的題目,原文如下 The old song declares “Go ahead and hate your neighbor”, and the residents of Onetinvill

原创 七夕告白

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>For my Girl</title> <style type="text