資料介紹
linux下的進(jìn)程通信手段基本上是從Unix平臺(tái)上的進(jìn)程通信手段繼承而來(lái)的。而對(duì)Unix發(fā)展做出重大貢獻(xiàn)的兩大主力AT&T的貝爾實(shí)驗(yàn)室及BSD(加州大學(xué)伯克利分校的伯克利軟件發(fā)布中心)在進(jìn)程間通信方面的側(cè)重點(diǎn)有所不同。前者對(duì)Unix早期的進(jìn)程間通信手段進(jìn)行了系統(tǒng)的改進(jìn)和擴(kuò)充,形成了“system V IPC”,通信進(jìn)程局限在單個(gè)計(jì)算機(jī)內(nèi);后者則跳過了該限制,形成了基于套接口(socket)的進(jìn)程間通信機(jī)制。Linux則把兩者繼承了下來(lái),如圖示:
其中,最初Unix IPC包括:管道、FIFO、信號(hào);System V IPC包括:System V消息隊(duì)列、System V信號(hào)燈、System V共享內(nèi)存區(qū);Posix IPC包括:Posix消息隊(duì)列、Posix信號(hào)燈、Posix共享內(nèi)存區(qū)。有兩點(diǎn)需要簡(jiǎn)單說(shuō)明一下:
1)由于Unix版本的多樣性,電子電氣工程協(xié)會(huì)(IEEE)開發(fā)了一個(gè)獨(dú)立的Unix標(biāo)準(zhǔn),這個(gè)新的ANSI Unix標(biāo)準(zhǔn)被稱為計(jì)算肪車目梢浦殘圓僮饗低辰緱媯≒SOIX)?,F(xiàn)有大部分Unix和流行版本都是遵循POSIX標(biāo)準(zhǔn)的,而Linux從一開始就遵循POSIX標(biāo)準(zhǔn);
2)BSD并不是沒有涉足單機(jī)內(nèi)的進(jìn)程間通信(socket本身就可以用于單機(jī)內(nèi)的進(jìn)程間通信)。事實(shí)上,很多Unix版本的單機(jī)IPC留有BSD的痕跡,如4.4BSD支持的匿名內(nèi)存映射、4.3+BSD對(duì)可靠信號(hào)語(yǔ)義的實(shí)現(xiàn)等等。
linux下進(jìn)程間通信的幾種主要手段簡(jiǎn)介:
1.管道
管道是進(jìn)程間通信中最古老的方式,它包括無(wú)名管道和有名管道兩種,前者可用于具有親緣關(guān)系進(jìn)程間的通信,即可用于父進(jìn)程和子進(jìn)程間的通信,后者額克服了管道沒有名字的限制,因此,除具有前者所具有的功能外,它還允許無(wú)親緣關(guān)系進(jìn)程間的通信,即可用于運(yùn)行于同一臺(tái)機(jī)器上的任意兩個(gè)進(jìn)程間的通信。
無(wú)名管道由pipe()函數(shù)創(chuàng)建:
#include 《unistd.h》
int pipe(int fiLEDis);
參數(shù)filedis返回兩個(gè)文件描述符:filedes[0]為讀而打開,filedes為寫而打開。filedes的輸出是filedes[0]的輸入。
在Linux系統(tǒng)下,有名管道可由兩種方式創(chuàng)建:命令行方式mknod系統(tǒng)調(diào)用和函數(shù)mkfifo。下面的兩種途徑都在當(dāng)前目錄下生成了一個(gè)名為myfifo的有名管道:
方式一:mkfifo(“myfifo”,“rw”);
方式二:mknod myfifo p
生成了有名管道后,就可以使用一般的文件I/O函數(shù)如open、close、read、write等來(lái)對(duì)它進(jìn)行操作。
2.消息隊(duì)列
消息隊(duì)列是消息的鏈接表,包括Posix消息隊(duì)列system V消息隊(duì)列。消息隊(duì)列用于運(yùn)行于同一臺(tái)機(jī)器上的進(jìn)程間通信,它和管道很相似,有足夠權(quán)限的進(jìn)程可以向隊(duì)列中添加消息,被賦予讀權(quán)限的進(jìn)程則可以讀走隊(duì)列中的消息。消息隊(duì)列克服了信號(hào)承載信息量少,管道只能承載無(wú)格式字節(jié)流以及緩沖區(qū)大小受限等缺點(diǎn)。
我們可以用流管道或者套接口的方式來(lái)取代它。
3.共享內(nèi)存
共享內(nèi)存是運(yùn)行在同一臺(tái)機(jī)器上的進(jìn)程間通信最快的方式,因?yàn)閿?shù)據(jù)不需要在不同的進(jìn)程間復(fù)制。通常由一個(gè)進(jìn)程創(chuàng)建一塊共享內(nèi)存區(qū),其余進(jìn)程對(duì)這塊內(nèi)存區(qū)進(jìn)行讀寫。共享內(nèi)存往往與其它通信機(jī)制,如信號(hào)量結(jié)合使用,來(lái)達(dá)到進(jìn)程間的同步及互斥。
首先要用的函數(shù)是shmget,它獲得一個(gè)共享存儲(chǔ)標(biāo)識(shí)符。
#include 《sys/types.h》
#include 《sys/ipc.h》
#include 《sys/shm.h》
int shmget(key_t key, int size, int flag);
這個(gè)函數(shù)有點(diǎn)類似大家熟悉的malloc函數(shù),系統(tǒng)按照請(qǐng)求分配size大小的內(nèi)存用作共享內(nèi)存。linux系統(tǒng)內(nèi)核中每個(gè)IPC結(jié)構(gòu)都有的一個(gè)非負(fù)整數(shù)的標(biāo)識(shí)符,這樣對(duì)一個(gè)消息隊(duì)列發(fā)送消息時(shí)只要引用標(biāo)識(shí)符就可以了。這個(gè)標(biāo)識(shí)符是內(nèi)核由IPC結(jié)構(gòu)的關(guān)鍵字得到的,這個(gè)關(guān)鍵字,就是上面第一個(gè)函數(shù)的key。數(shù)據(jù)類型key_t是在頭文件sys/types.h中定義的,它是一個(gè)長(zhǎng)整形的數(shù)據(jù)。在我們后面的章節(jié)中,還會(huì)碰到這個(gè)關(guān)鍵字。
當(dāng)共享內(nèi)存創(chuàng)建后,其余進(jìn)程可以調(diào)用shmat()將其連接到自身的地址空間中。
void *shmat(int shmid, void *addr, int flag);
shmid為shmget函數(shù)返回的共享存儲(chǔ)標(biāo)識(shí)符,addr和flag參數(shù)決定了以什么方式來(lái)確定連接的地址,函數(shù)的返回值即是該進(jìn)程數(shù)據(jù)段所連接的實(shí)際地址,進(jìn)程可以對(duì)此進(jìn)程進(jìn)行讀寫操作。
使用共享存儲(chǔ)來(lái)實(shí)現(xiàn)進(jìn)程間通信的注意點(diǎn)是對(duì)數(shù)據(jù)存取的同步,必須確保當(dāng)一個(gè)進(jìn)程去讀取數(shù)據(jù)時(shí),它所想要的數(shù)據(jù)已經(jīng)寫好了。通常,信號(hào)量被要來(lái)實(shí)現(xiàn)對(duì)共享存儲(chǔ)數(shù)據(jù)存取的同步,另外,可以通過使用shmctl函數(shù)設(shè)置共享存儲(chǔ)內(nèi)存的某些標(biāo)志位如SHM_LOCK、SHM_UNLOCK等來(lái)實(shí)現(xiàn)。
4. 信號(hào)量
信號(hào)量又稱為信號(hào)燈,它是用來(lái)協(xié)調(diào)不同進(jìn)程間的數(shù)據(jù)對(duì)象的,而最主要的應(yīng)用是前一節(jié)的共享內(nèi)存方式的進(jìn)程間通信。本質(zhì)上,信號(hào)量是一個(gè)計(jì)數(shù)器,它用來(lái)記錄對(duì)某個(gè)資源(如共享內(nèi)存)的存取狀況。一般說(shuō)來(lái),為了獲得共享資源,進(jìn)程需要執(zhí)行下列操作:
?。?) 測(cè)試控制該資源的信號(hào)量。
?。?) 若此信號(hào)量的值為正,則允許進(jìn)行使用該資源。進(jìn)程將進(jìn)號(hào)量減1。
?。?) 若此信號(hào)量為0,則該資源目前不可用,進(jìn)程進(jìn)入睡眠狀態(tài),直至信號(hào)量值大于0,進(jìn)程被喚醒,轉(zhuǎn)入步驟(1)。
(4) 當(dāng)進(jìn)程不再使用一個(gè)信號(hào)量控制的資源時(shí),信號(hào)量值加1。如果此時(shí)有進(jìn)程正在睡眠等待此信號(hào)量,則喚醒此進(jìn)程。
維護(hù)信號(hào)量狀態(tài)的是Linux內(nèi)核操作系統(tǒng)而不是用戶進(jìn)程。我們可以從頭文件/usr/src/linux/include/linux/sem.h中看到內(nèi)核用來(lái)維護(hù)信號(hào)量狀態(tài)的各個(gè)結(jié)構(gòu)的定義。信號(hào)量是一個(gè)數(shù)據(jù)集合,用戶可以單獨(dú)使用這一集合的每個(gè)元素。要調(diào)用的第一個(gè)函數(shù)是semget,用以獲得一個(gè)信號(hào)量ID。
#include 《sys/types.h》
#include 《sys/ipc.h》
#include 《sys/sem.h》
int semget(key_t key, int nsems, int flag);
key是前面講過的IPC結(jié)構(gòu)的關(guān)鍵字,它將來(lái)決定是創(chuàng)建新的信號(hào)量集合,還是引用一個(gè)現(xiàn)有的信號(hào)量集合。nsems是該集合中的信號(hào)量數(shù)。如果是創(chuàng)建新集合(一般在服務(wù)器中),則必須指定nsems;如果是引用一個(gè)現(xiàn)有的信號(hào)量集合(一般在客戶機(jī)中)則將nsems指定為0。
semctl函數(shù)用來(lái)對(duì)信號(hào)量進(jìn)行操作。
int semctl(int semid, int semnum, int cmd, union semun arg);
不同的操作是通過cmd參數(shù)來(lái)實(shí)現(xiàn)的,在頭文件sem.h中定義了7種不同的操作,實(shí)際編程時(shí)可以參照使用。
其中,最初Unix IPC包括:管道、FIFO、信號(hào);System V IPC包括:System V消息隊(duì)列、System V信號(hào)燈、System V共享內(nèi)存區(qū);Posix IPC包括:Posix消息隊(duì)列、Posix信號(hào)燈、Posix共享內(nèi)存區(qū)。有兩點(diǎn)需要簡(jiǎn)單說(shuō)明一下:
1)由于Unix版本的多樣性,電子電氣工程協(xié)會(huì)(IEEE)開發(fā)了一個(gè)獨(dú)立的Unix標(biāo)準(zhǔn),這個(gè)新的ANSI Unix標(biāo)準(zhǔn)被稱為計(jì)算肪車目梢浦殘圓僮饗低辰緱媯≒SOIX)?,F(xiàn)有大部分Unix和流行版本都是遵循POSIX標(biāo)準(zhǔn)的,而Linux從一開始就遵循POSIX標(biāo)準(zhǔn);
2)BSD并不是沒有涉足單機(jī)內(nèi)的進(jìn)程間通信(socket本身就可以用于單機(jī)內(nèi)的進(jìn)程間通信)。事實(shí)上,很多Unix版本的單機(jī)IPC留有BSD的痕跡,如4.4BSD支持的匿名內(nèi)存映射、4.3+BSD對(duì)可靠信號(hào)語(yǔ)義的實(shí)現(xiàn)等等。
linux下進(jìn)程間通信的幾種主要手段簡(jiǎn)介:
1.管道
管道是進(jìn)程間通信中最古老的方式,它包括無(wú)名管道和有名管道兩種,前者可用于具有親緣關(guān)系進(jìn)程間的通信,即可用于父進(jìn)程和子進(jìn)程間的通信,后者額克服了管道沒有名字的限制,因此,除具有前者所具有的功能外,它還允許無(wú)親緣關(guān)系進(jìn)程間的通信,即可用于運(yùn)行于同一臺(tái)機(jī)器上的任意兩個(gè)進(jìn)程間的通信。
無(wú)名管道由pipe()函數(shù)創(chuàng)建:
#include 《unistd.h》
int pipe(int fiLEDis);
參數(shù)filedis返回兩個(gè)文件描述符:filedes[0]為讀而打開,filedes為寫而打開。filedes的輸出是filedes[0]的輸入。
在Linux系統(tǒng)下,有名管道可由兩種方式創(chuàng)建:命令行方式mknod系統(tǒng)調(diào)用和函數(shù)mkfifo。下面的兩種途徑都在當(dāng)前目錄下生成了一個(gè)名為myfifo的有名管道:
方式一:mkfifo(“myfifo”,“rw”);
方式二:mknod myfifo p
生成了有名管道后,就可以使用一般的文件I/O函數(shù)如open、close、read、write等來(lái)對(duì)它進(jìn)行操作。
2.消息隊(duì)列
消息隊(duì)列是消息的鏈接表,包括Posix消息隊(duì)列system V消息隊(duì)列。消息隊(duì)列用于運(yùn)行于同一臺(tái)機(jī)器上的進(jìn)程間通信,它和管道很相似,有足夠權(quán)限的進(jìn)程可以向隊(duì)列中添加消息,被賦予讀權(quán)限的進(jìn)程則可以讀走隊(duì)列中的消息。消息隊(duì)列克服了信號(hào)承載信息量少,管道只能承載無(wú)格式字節(jié)流以及緩沖區(qū)大小受限等缺點(diǎn)。
我們可以用流管道或者套接口的方式來(lái)取代它。
3.共享內(nèi)存
共享內(nèi)存是運(yùn)行在同一臺(tái)機(jī)器上的進(jìn)程間通信最快的方式,因?yàn)閿?shù)據(jù)不需要在不同的進(jìn)程間復(fù)制。通常由一個(gè)進(jìn)程創(chuàng)建一塊共享內(nèi)存區(qū),其余進(jìn)程對(duì)這塊內(nèi)存區(qū)進(jìn)行讀寫。共享內(nèi)存往往與其它通信機(jī)制,如信號(hào)量結(jié)合使用,來(lái)達(dá)到進(jìn)程間的同步及互斥。
首先要用的函數(shù)是shmget,它獲得一個(gè)共享存儲(chǔ)標(biāo)識(shí)符。
#include 《sys/types.h》
#include 《sys/ipc.h》
#include 《sys/shm.h》
int shmget(key_t key, int size, int flag);
這個(gè)函數(shù)有點(diǎn)類似大家熟悉的malloc函數(shù),系統(tǒng)按照請(qǐng)求分配size大小的內(nèi)存用作共享內(nèi)存。linux系統(tǒng)內(nèi)核中每個(gè)IPC結(jié)構(gòu)都有的一個(gè)非負(fù)整數(shù)的標(biāo)識(shí)符,這樣對(duì)一個(gè)消息隊(duì)列發(fā)送消息時(shí)只要引用標(biāo)識(shí)符就可以了。這個(gè)標(biāo)識(shí)符是內(nèi)核由IPC結(jié)構(gòu)的關(guān)鍵字得到的,這個(gè)關(guān)鍵字,就是上面第一個(gè)函數(shù)的key。數(shù)據(jù)類型key_t是在頭文件sys/types.h中定義的,它是一個(gè)長(zhǎng)整形的數(shù)據(jù)。在我們后面的章節(jié)中,還會(huì)碰到這個(gè)關(guān)鍵字。
當(dāng)共享內(nèi)存創(chuàng)建后,其余進(jìn)程可以調(diào)用shmat()將其連接到自身的地址空間中。
void *shmat(int shmid, void *addr, int flag);
shmid為shmget函數(shù)返回的共享存儲(chǔ)標(biāo)識(shí)符,addr和flag參數(shù)決定了以什么方式來(lái)確定連接的地址,函數(shù)的返回值即是該進(jìn)程數(shù)據(jù)段所連接的實(shí)際地址,進(jìn)程可以對(duì)此進(jìn)程進(jìn)行讀寫操作。
使用共享存儲(chǔ)來(lái)實(shí)現(xiàn)進(jìn)程間通信的注意點(diǎn)是對(duì)數(shù)據(jù)存取的同步,必須確保當(dāng)一個(gè)進(jìn)程去讀取數(shù)據(jù)時(shí),它所想要的數(shù)據(jù)已經(jīng)寫好了。通常,信號(hào)量被要來(lái)實(shí)現(xiàn)對(duì)共享存儲(chǔ)數(shù)據(jù)存取的同步,另外,可以通過使用shmctl函數(shù)設(shè)置共享存儲(chǔ)內(nèi)存的某些標(biāo)志位如SHM_LOCK、SHM_UNLOCK等來(lái)實(shí)現(xiàn)。
4. 信號(hào)量
信號(hào)量又稱為信號(hào)燈,它是用來(lái)協(xié)調(diào)不同進(jìn)程間的數(shù)據(jù)對(duì)象的,而最主要的應(yīng)用是前一節(jié)的共享內(nèi)存方式的進(jìn)程間通信。本質(zhì)上,信號(hào)量是一個(gè)計(jì)數(shù)器,它用來(lái)記錄對(duì)某個(gè)資源(如共享內(nèi)存)的存取狀況。一般說(shuō)來(lái),為了獲得共享資源,進(jìn)程需要執(zhí)行下列操作:
?。?) 測(cè)試控制該資源的信號(hào)量。
?。?) 若此信號(hào)量的值為正,則允許進(jìn)行使用該資源。進(jìn)程將進(jìn)號(hào)量減1。
?。?) 若此信號(hào)量為0,則該資源目前不可用,進(jìn)程進(jìn)入睡眠狀態(tài),直至信號(hào)量值大于0,進(jìn)程被喚醒,轉(zhuǎn)入步驟(1)。
(4) 當(dāng)進(jìn)程不再使用一個(gè)信號(hào)量控制的資源時(shí),信號(hào)量值加1。如果此時(shí)有進(jìn)程正在睡眠等待此信號(hào)量,則喚醒此進(jìn)程。
維護(hù)信號(hào)量狀態(tài)的是Linux內(nèi)核操作系統(tǒng)而不是用戶進(jìn)程。我們可以從頭文件/usr/src/linux/include/linux/sem.h中看到內(nèi)核用來(lái)維護(hù)信號(hào)量狀態(tài)的各個(gè)結(jié)構(gòu)的定義。信號(hào)量是一個(gè)數(shù)據(jù)集合,用戶可以單獨(dú)使用這一集合的每個(gè)元素。要調(diào)用的第一個(gè)函數(shù)是semget,用以獲得一個(gè)信號(hào)量ID。
#include 《sys/types.h》
#include 《sys/ipc.h》
#include 《sys/sem.h》
int semget(key_t key, int nsems, int flag);
key是前面講過的IPC結(jié)構(gòu)的關(guān)鍵字,它將來(lái)決定是創(chuàng)建新的信號(hào)量集合,還是引用一個(gè)現(xiàn)有的信號(hào)量集合。nsems是該集合中的信號(hào)量數(shù)。如果是創(chuàng)建新集合(一般在服務(wù)器中),則必須指定nsems;如果是引用一個(gè)現(xiàn)有的信號(hào)量集合(一般在客戶機(jī)中)則將nsems指定為0。
semctl函數(shù)用來(lái)對(duì)信號(hào)量進(jìn)行操作。
int semctl(int semid, int semnum, int cmd, union semun arg);
不同的操作是通過cmd參數(shù)來(lái)實(shí)現(xiàn)的,在頭文件sem.h中定義了7種不同的操作,實(shí)際編程時(shí)可以參照使用。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Linux操作系統(tǒng)的CP命令源代碼匯總 4次下載
- LINUX操作系統(tǒng)的安裝與Linux常用文件命令 3次下載
- Linux的Ubuntu操作系統(tǒng)的安裝教程 22次下載
- Linux操作系統(tǒng)分析與實(shí)踐PDF電子書免費(fèi)下載 15次下載
- Linux操作系統(tǒng)實(shí)用教程之如何進(jìn)行Linux系統(tǒng)下的編程管理 5次下載
- Linux操作系統(tǒng)下C語(yǔ)言編程入門.pdf 95次下載
- 基于QNX操作系統(tǒng)下的Modbus串口通信設(shè)計(jì) 16次下載
- 基于Linux操作系統(tǒng)下C語(yǔ)言編程入門 11次下載
- 關(guān)于實(shí)時(shí)操作系統(tǒng)VxWorks下的并口通信技術(shù) 4次下載
- Linux操作系統(tǒng)分析 78次下載
- Linux操作系統(tǒng)實(shí)時(shí)性分析及改進(jìn)策略
- 操作系統(tǒng)講解(操作系統(tǒng)課件) 0次下載
- Linux操作系統(tǒng)原理及應(yīng)用 0次下載
- Linux操作系統(tǒng) 0次下載
- 實(shí)時(shí)操作系統(tǒng)VxWorks下的并口通信技術(shù)
- Linux操作系統(tǒng)中如何按下PCIe的復(fù)位鍵 1183次閱讀
- Linux下進(jìn)程通信的方法 565次閱讀
- Linux是實(shí)時(shí)系統(tǒng)還是分時(shí)操作系統(tǒng)? 1414次閱讀
- 進(jìn)程在Linux上是怎么實(shí)現(xiàn)的 1272次閱讀
- 一文深入理解操作系統(tǒng)的進(jìn)程調(diào)度 2242次閱讀
- linux操作系統(tǒng)基礎(chǔ)知識(shí) 5829次閱讀
- 淺談Linux美國(guó)服務(wù)器常見操作系統(tǒng) 2451次閱讀
- Linux操作系統(tǒng)知識(shí)講解:走進(jìn)Linux 內(nèi)存分配算法 5324次閱讀
- Linux操作系統(tǒng)知識(shí)講解:走進(jìn)linux 內(nèi)存地址空間 4903次閱讀
- Linux操作系統(tǒng)知識(shí)講解:走進(jìn)內(nèi)存 2255次閱讀
- Linux操作系統(tǒng)的目錄結(jié)構(gòu) 3431次閱讀
- 基于Linux等不同操作系統(tǒng)實(shí)現(xiàn)異構(gòu)系統(tǒng)的設(shè)計(jì) 2537次閱讀
- Linux進(jìn)程管理:什么是進(jìn)程?進(jìn)程的生命周期 7750次閱讀
- 基于嵌入式操作系統(tǒng)Linux環(huán)境中的沒有競(jìng)爭(zhēng)態(tài)讀寫進(jìn)程同步設(shè)計(jì) 668次閱讀
- 基于Linux的嵌入式實(shí)時(shí)操作系統(tǒng)的研究 2298次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多