windows和linux的進程創建 CreateProcess 和 fork


windows下有沒有 類似 fork 的函數呢?fork可以從當前 復制所有進程信息都另一個進程,然后兩個進程可以執行不同的代碼。

windows顯然沒有fork。只有CreateProcess,但是CreateProcess有很多參數:

BOOL WINAPI CreateProcess(
  _In_opt_     LPCTSTR lpApplicationName,
  _Inout_opt_  LPTSTR lpCommandLine,
  _In_opt_     LPSECURITY_ATTRIBUTES lpProcessAttributes,
  _In_opt_     LPSECURITY_ATTRIBUTES lpThreadAttributes,
  _In_         BOOL bInheritHandles,
  _In_         DWORD dwCreationFlags,
  _In_opt_     LPVOID lpEnvironment,
  _In_opt_     LPCTSTR lpCurrentDirectory,
  _In_         LPSTARTUPINFO lpStartupInfo,
  _Out_        LPPROCESS_INFORMATION lpProcessInformation
);

http://msdn.microsoft.com/en-us/library/ms682425(v=vs.85).aspx

看來用法是 指定一個 exe的路徑,然后指定參數,來運行這個exe。 linux下也是有Exec類似的函數的,類似CreateProcess的。

如果 創建進程 跟 創建線程一樣,指定一個函數地址,和參數,那該多好啊。。。。。。

 

相關資料:

[回溯本源] Unix Fork和Windows CreateProcess可以比較嗎?  cnblogs的頁面居然404,找不到了。哎。

原來 這個文章 應該在iteye這里。

 http://www.iteye.com/topic/664024

 http://raylinn.iteye.com/blog/664024

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM