原创 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變量以及線程私有數據。進程的所有信息對該進程的所有線程都是共享的,包括可執行的程序