原创 深究標準IO的緩存

http://www.cnblogs.com/orlion/p/6258691.html

原创 編譯系統四步驟——預處理、編譯、彙編、鏈接

編譯系統 gcc編譯器將C程序文件翻譯成一個可執行目標文件分爲四個階段(預處理、編譯、彙編、鏈接),執行這四個階段的程序構成了編譯系統。 以上圖援引自《深入理解計算機系統(原書第三版)》 C程序文件/hello.c #in

原创 安裝vim時 無法獲得鎖 /var/lib/dpkg/lock - open (11: 資源暫時不可用) ubuntu 安裝vim 及遇到的錯誤處理

今天,處理完問題,閒來無事,打算在虛擬機中的Ubuntu中練習shell腳本編寫。 無奈,虛擬機系統所裝的只有vi,這個編輯軟件對於我們來說還是比較不習慣的,所以打算安裝vim。好了,閒言少敘。 安裝vim: 1.我是虛擬機系統避

原创 E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

解決: sudo rm /var/lib/dpkg/lock sudo rm /var/lib/dpkg/lock sudo dpkg –configure -a 點贊 1 收藏 分享 文章舉

原创 窗口大小、滑動窗口

第十二章 tcp的引入

原创 io學習:2.細說緩存區

緩存區對比分析 1.測試緩存區大小 全緩存:4K,測試程序輸出爲4096,1K = 1024; #include <stdio.h> #include <stdlib.h> int main(int argc, const char

原创 網絡編程學習:io模型之io多路複用

多路複用的概念: 簡而言之,就是將準備要用的文件描述符添加到一張表裏,然後讓select等待表裏的任一描述符準備就緒(就是可以執行了),然後執行那個已經準備就緒的文件描述符,然後把其他的沒有準備好的文件描述符全都刪除; 援引知乎上的一個解

原创 vmware tools手動安裝方法

第一步,將vmware安裝目錄下的linux.iso掛載到CD/DVD中; 第二步,點擊虛擬機右下角相應的CD/DVD(就是你掛載到哪個裏面了,就選哪個,鼠標停在那可以看見掛載的內容),然後點擊“連接”; 第三步,將光盤裏的VMware

原创 進程學習:進程間通信(傳統通信方式)1.無名管道

無名管道的特點: 1.適用場景:只能用於具有親緣關係的兩個進程之間; 2.通信模式:半雙工模式,具有固定的讀端(0)和寫端(1); 3.讀寫方式:用文件io,不支持lseek; 4.讀阻塞:當管道中無數據時; 寫阻塞:當管道

原创 網絡學習:基於多進程的併發服務器

今天在練習多進程的併發服務器是出現了一個accept函數bad file descriptor的錯誤信息。分析了一下代碼,原來是忘記讓子進程在循環外退出了,導致子進程直接執行了,close(listenfd)。所以返回了這個錯誤碼。記錄一

原创 進程學習:進程間通信(system v IPC)2.共享內存

共享內存與消息隊列、管道的區別: 1.消息隊列、管道中的數據讀取之後就沒有了;而共享內存中的數據無論讀取多少次,都還會在裏面; 2.共享內存讀取相對於消息隊列與管道來說,效率最高,直接對指向共享內存的指針進行讀寫操作; 共享內存函數

原创 進程學習:進程退出_exit()和exit()

_exit 和 exit 最大的區別在於後者在結束進程時會刷新緩存區,前者則不會刷新緩存區; #include <stdio.h> #include <unistd.h> #include <sys/wait.h> #include <s

原创 進程學習:初見進程

進程 pid_t fork(void); 功能:創建一個新的進程 參數:無 返回值: 成功:如果是父進程返回子進程的pid號;如果是子進程返回0; 失敗:返回-1 特點一:調用一次,返回兩次 #include <stdio.h

原创 進程學習:進程間通信(system v IPC)1.消息隊列

消息隊列與管道的異同點: 消息隊列與管道的相同點: 1.都是利用內核的1G空間來通信(如圖); 消息隊列與管道的不同點: 1.管道的數據讀取是嚴格按照先進先出; 2.消息隊列的數據讀取可以按照數據類型進行讀取; 消息隊列函數 一

原创 進程學習:進程間通信(傳統通信方式)3.信號

信號是一個異步通信(意思就是忽略程序執行的先後順序),大白話就是你別管我,我在呢,你該幹啥就幹啥,等到信號來時,我會蹦出來處理信號的; 常用到的信號函數: kill:向指定進程發送一個信號; raise:向當前進程發送一個信號; a