原创 centos6.5 斷電重新啓動後的unexpected

CentOS 6.5斷電後啓動出現:unexpected inconsistency run fsck manully 如下圖: 解決方法: 1、輸入root用戶的密碼回車; 2、執行以下命令,修復磁盤 [plain]

原创 高級I/O多路轉接之select poll epoll 區別

select、poll、epoll之總結[整理]  概述 Linux上可以使用不同的I/O模型,我們可以通過下圖瞭解常用的I/O模型:同步和異步模型,以及阻塞和非阻塞模型,本文主要分析其中的異步阻塞模型。   se

原创 TCP--三次握手(建立連接)與四次揮手(關閉連接)(轉)

TCP的三次握手(建立連接)和四次揮手(關閉連接) 參照: http://course.ccniit.com/CSTD/Linux/reference/files/018.PDF http://hi.baidu.com/raycome

原创 進程通信方法之一--管道(的容量與實現)

一、進程通信 1、進程間通信的作用         進程間需要數據傳輸、資源共享和事件通知。 2、進程間通信的方式 進程間通信主要包括管道,系統ipc(包括消息隊列,信號量,共享存儲),socket。         管道通信

原创 vim便捷命令:高亮搜索& 多行註釋 和 取消多行註釋

Vim 的高亮搜索 1. 使用 * 鍵可以向後搜索光標所在位置的單詞。反之,使用 # 鍵可以向前搜索光標所在位置的單詞。第一次使用 * 或者 # 進行搜索之後,則可以使用 N 或 Shift-N 繼續進行搜索。另外,如果設置了h

原创 ncurses及簡單使用

1、NCURSES:提供字符終端處理庫,包括面板和菜單 NCURSES不僅僅只是封裝了底層的終端功能,而且提供了一個相當穩固的工作框架(Framework)用 以產生漂亮的界面。它包含了一些創建窗口的函數。而它的姊妹庫 Menu、P

原创 shell定時器-crontab

Linux的crontab crontab定時器(包括執行shell) 如果要讓unix系統重複,定期做一件事,我們就會用到crontab. 實質上真正去執行每一個重複任務的是cron,cron是的unix家族的一個後臺常駐程序

原创 linux中fork()函數詳解

linux中fork()函數詳解(原創!!實例講解) (轉載)    一、fork入門知識      一個進程,包括代碼、數據和分配給進程的資源。fork()函數通過系統調用創建一個與原來進程幾乎完全相同的進程, 也就是兩個

原创 TCP--三次握手(建立連接)與四次揮手(關閉連接)

1、TCP(Transmission Control Protocol) 傳輸控制協議 三次握手 TCP是主機對主機層的傳輸控制協議,提供可靠的連接服務,採用三次握手確認建立一個連接: 位碼即tcp標誌位,有6種標示: SYN(synch

原创 c程序的編譯&條件編譯 (預處理階段)

一、c程序的編譯過程 C源程序頭文件-->預編譯處理(cpp)-->編譯程序本身-->優化程序-->彙編程序-->鏈接程序-->可執行文件 編譯,編譯程序讀取源程序(字符流),對之進行詞法和語法的分析,將高級語言指令轉換爲功能等效的彙

原创 linux信號--阻塞信號

1. 信號在內核中的表示 我們知道了信號產生的各種原因,而實際執行信號處理的動作,叫做信號遞達(Delivery)。信號從產生到遞達之間的狀態,稱爲信號未決(Pending)。進程可以選擇阻塞(Block)某個信號。被阻塞的信號產生時將保

原创 dup()和dup2()

聲明:本文文字較多,比較枯燥,請耐下性子來看,收穫會有的 1、函數dup()和dup2() (1)#include <unistd.h> int dup(int oldfd); int dup2(int oldfd, int new

原创 死鎖的原因,避免及預防

1、死鎖: 什麼是死鎖? 死鎖是指在一組進程中的各個進程均佔有不會釋放的資源,但因互相申請被其他進程所站用不會釋放的資源而處於的一種永久等待狀態。 2、死鎖產生的原因: (1)競爭不可搶佔性資源; 競爭可消耗資源; 進程推進順序不當; (

原创 linux 5種I/O模型

一、socket阻塞與非阻塞,同步與異步 1. 概念理解      在進行網絡編程時,我們常常見到同步(Sync)/異步(Async),阻塞(Block)/非阻塞(Unblock)四種調用方式:同步:       所謂同步,就是在

原创 linux 常見進程狀態的調度及算法

一、進程的狀態: 1、操作系統中: 進程是一個動態的實體,所以他是有生命的。從創建到消亡,是一個進程的整個生命週期。在這個週期中,進程可能會經歷各種不同的狀態。一般來說,所有進程都要經歷以下的3個狀態: (1)就緒態。指進程已經獲得所有所