作者 主題: 請問要如何在不同的程式間傳遞資料ㄋ?  (閱讀 5180 次)

0 會員 與 1 訪客 正在閱讀本文。

lunasea67

  • 懷疑的國中生
  • **
  • 文章數: 38
    • 檢視個人資料
大家好,我最近碰到一個自己無法解決的觀念問題,想請大家指導我一下!
以前寫c程式都只是單一個程式,頂多主程式呼叫副程式而已,
而現在所碰到的問題是比方有個作業先是使用者輸入一些資料給A主機(Linux)下的程式執行完再把結果拿到B主機下(Linux)去執行...而現在要簡化作業必須寫個程式讓使用者一開始把要輸入A.B主機的資料輸入完,利用這程式自己去傳遞資料給A主機再把結果傳給B主機在去執行,我不懂的地方就在這裡,我不知道我寫的程式要如何把使用者輸入的資料給A主機,再把結果給B主機......,中間的資料傳遞要用什麼方式呢?要如何讓不同的程式間可以互相抓資料ㄋ?中間的介面要如何解決呢?...........請大家多多指教...這個觀念問題我一直無法解決..謝謝大家!

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #1 於: 2003-07-09 23:20 »
這個要用 TCP/IP 的程式會較好,
也就是 Socket Programming
你可用 Google 找
"Steven TCP/IP" , 可以找到該書的範例程式來參考

如果是同一台機器,兩個 Process 間資料要互傳
大柢上都是用 Share Memory 或 File
(shm* 開頭的 function)

jerryhuang

  • 憂鬱的高中生
  • ***
  • 文章數: 173
    • 檢視個人資料
請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #2 於: 2003-07-09 23:35 »
引用
如果是同一台機器,兩個 Process 間資料要互傳
大柢上都是用 Share Memory 或 File
(shm* 開頭的 function)

這是指使用 ipc 嗎?

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #3 於: 2003-07-10 00:15 »
引用
這是指使用 ipc 嗎?

嗯~~我知道在 shm 在 Windows 稱為 IPC
但 Linux 有沒有這種稱呼就不知道

jerryhuang

  • 憂鬱的高中生
  • ***
  • 文章數: 173
    • 檢視個人資料
請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #4 於: 2003-07-10 01:28 »
unix 都有啦..windows 應該是學自 unix 的。
之前有看過類似的文章,只是程式這個東東不是很行,所以也不很了解。
不過我知道很多 unix 的程式都有使用。
http://www.fanqiang.com/a4/b8/20011006/0705001407.html
這個網頁有些說明。
User Commands                                             ipcs(1)

NAME
     ipcs - report inter-process communication facilities status

SYNOPSIS
     ipcs [-aAbcimopqst] [-D mtype]

DESCRIPTION
     The ipcs utility  prints  information  about  active  inter-
     process  communication  facilities.  The information that is
     displayed is controlled by  the  options  supplied.  Without
     options,  information is printed in short format for message
     queues, shared memory, and  semaphores  that  are  currently
     active in the system.

ticks0628

  • 可愛的小學生
  • *
  • 文章數: 25
    • 檢視個人資料
    • http://embedded.homeunix.org
Re: 請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #5 於: 2003-07-30 14:02 »
引述: "lunasea67"
大家好,我最近碰到一個自己無法解決的觀念問題,想請大家指導我一下!
以前寫c程式都只是單一個程式,頂多主程式呼叫副程式而已,
而現在所碰到的問題是比方有個作業先是使用者輸入一些資料給A主機(Linux)下的程式執行完再把結果拿到B主機下(Linux)去執行...而現在要簡化作業必須寫個程式讓使用者一開始把要輸入A.B主機的資料輸入完,利用這程式自己去傳遞資料給A主機再把結果傳給B主機在去執行,我不懂的地方就在這裡,我不知道我寫的程式要如何把使用者輸入的資料給A主機,再把結果給B主機......,中間的資料傳遞要用什麼方式呢?要如何讓不同的程式間可以互相抓資料ㄋ?中間的介面要如何解決呢?...........請大家多多指教...這個觀念問題我一直無法解決..謝謝大家!


嗯.....如果要不同臺的電腦
用TCP 或 UDP 都可......詳細的........要看書.

同一台的話看資料量大小..可以用share memory    小的話可以用 queue...

toddchou

  • 可愛的小學生
  • *
  • 文章數: 5
    • 檢視個人資料
請問要如何在不同的程式間傳遞資料ㄋ?
« 回覆 #6 於: 2003-09-12 19:14 »
我有本書有講過這部分
but  書在家裡 書名忘了
應該是
socket programming. XXXX
蠻有名的