原创 UNIX-LINUX編程實踐教程筆記:5 學習stty
1、設備就像文件 對unix來說,聲卡、終端、鼠標和磁盤文件是同一種對象。在unix系統中,每個設備都被當做一個文件。每個設備都有一個文件名、一個i-節點號、一個文件所有者、一個權限位的集合和最近修改時間。文件有關的所有內容都將
原创 Unix環境高級編程筆記:13、守護進程
1 守護進程 守護進程也稱精靈進程(daemon)是生存期較長的一種進程。它們常常在系統自舉時啓動,僅在系統關閉時才終止。 因爲沒的控制終端,所以它們是在後臺運行的。 2、守護進程特徵 父進程ID爲0的各進程
原创 Unix環境高級編程筆記:8、進程控制
1、進程標識符 每個進程都有一個非負整型表示的唯一進程ID。 ID爲0的進程通常是調度進程,常常被稱爲交換進程(swapper)。 ID爲1通常是init進程,在自舉過程結束時由內核調用。該進程文件在/etc/i
原创 Unix環境高級編程筆記:7、進程環境
1、進程終止 a)進程終止的8種方式 從main返回 調用exit 調用_exit或_Exit 最後一個線程從其啓動進程
原创 Unix環境高級編程筆記:4、文件和目錄
1、stat fstat lstat #include <sys/stat.h> int stat(const char * restrict pathname,struct stat *restrict buf
原创 Unix系統編程筆記:2、程序、進程、線程
1、程序怎麼轉換成進程 程序(program)是爲了完成特定的任務而準備好的一個指令序列。 c編譯器將每個源文件翻譯成一個目標文件,然後編譯器將這些單個的目標文件同必須的一些庫相鏈接,形成一個可執行模塊(ex
原创 Makefile樣例
.PHONY:clean CC=gcc CFLAGS=-Wall -g BIN=miniftpd OBJS=main.o sysutil.o session.o ftpproto.o privparent.o str.o tunabl
原创 UNIX環境高級編程
UNIX環境高級編程 作者: W.Richard Stevens / Stephen A.Rago 出版社: 人民郵電出版社副標題: 第2版譯者: 尤晉元 / 張亞英 / 戚正偉 出版年: 2006年頁數: 780頁定價: 99
原创 Unix環境高級編程筆記:9、進程關係
1、進程組 #include <unistd.h> pid_t getpgrp(void); 返回值:調用進程的進程組ID 每個進程組都可以有一個組長進程。組長進程標識是,其進程組ID等於其進程
原创 UNIX系統編程筆記:3 Unix系統中的進程
《UNIX系統編程》第三章 筆記 1、進程標識 UNIX用惟一的被稱爲進程ID的整數值來標識進程。 每個進程還有一個父進程ID,這個父進程ID最初是創建它的那個進程的進程ID。 如果這個父進程終止,進程就由一
原创 Unix環境高級編程筆記:3、文件I/O
1、文件io需求5個函數 open read write lseek close 這些函數被稱爲不帶緩衝的IO,不帶緩衝IO指的是每個read和write都調用內核中的系統調用 只要涉及多個進程間共享資源,原
原创 Unix環境高級編程筆記:5、標準IO庫
1、fwide 設置流的定向 #include <stdio.h> #include <wchar.h> int fwide(FILE *fp,int mode); mode參數值爲負,fwid
原创 Unix環境高級編程筆記:12、高級IO
1、非阻塞IO 系統調用分成“低速”系統調用和其他系統調用。低速系統調用是可能會使進程永遠阻塞的一類系統調用 1)如果某些文件類型(管道、終端設備、網絡設備)的數據不存在,則讀操作可能會使調用者永遠阻塞 2)如果
原创 Unix環境高級編程筆記:10、信號
信號是軟件中斷,信號提供了一種處理異步事件的方法。 1、信號概念 每個信號都有一個名字,這些名字都以三個字符SIG開頭。 SIGABRT是夭折信號,當進程調用abort函數時產生這種信號 SIGALRM是鬧鐘信號
原创 Unix環境高級編程筆記:11、線程
1、線程概念 線程包含了表示進程內執行環境必須的信息,其中包括進程中標識線程的線程ID、一組寄存器值、棧、調度優先級和策略、信號屏蔽字、errno變量以及線程私有數據。進程的所有信息對該進程的所有線程都是共享的,包括可執行的程序