2011-11-17 112 views
3

我一直看到這個問題,每次查找它時,我都無法很好地解釋它是什麼或對我意味着什麼。什麼是POSIX合規性,它對我有什麼影響?

什麼是POSIX合規性?假設我的程序只能在兼容POSIX的機器上運行,如何爲程序員簡化我的工作?它甚至?

+1

可能的重複[我從來沒有真正明白:什麼是POSIX?](http://stackoverflow.com/questions/1780599/i-never-really-understood-what-is-posix) –

回答

5

POSIX定義了一組C headersSystem Interfaces,一個Shell Command LanguageUtilities,即相符的系統必須實現。

作爲一名開發人員,您可以依靠每個POSIX系統上提供的這些標準接口。如果您的程序使用標準接口,則它可以在所有POSIX系統上運行。

移植到非標準系統是更多的工作,因爲系統接口例如對於multithreadingnetworking是不同的。

+0

所以只要我只能在我的代碼中使用C頭文件和系統接口,它將以相同的方式運行任何POSIX系統(我只需要重新編譯)? – achow

+0

是的,這是一般的想法。當然,如果它們是POSIX兼容的,你也可以使用外部庫和它們的頭文件。假設你已經觀察到其他便攜式編碼實踐,即只使用對齊的指針,處理字節順序問題等,依賴於_implementation defined_行爲會破壞可移植性,所以需要重新編譯。 – mizo

相關問題