2
在我們的開發團隊中,我們正在爲自己的需要修改驅動程序。我們需要它在linux文件系統中執行外部二進制文件(用戶空間應用程序)。從Linux內核運行外部二進制文件
這樣做是正確的嗎?從Linux內核中調用二進制文件的最佳方式是什麼? system(),popen()?
感謝您的回答。
在我們的開發團隊中,我們正在爲自己的需要修改驅動程序。我們需要它在linux文件系統中執行外部二進制文件(用戶空間應用程序)。從Linux內核運行外部二進制文件
這樣做是正確的嗎?從Linux內核中調用二進制文件的最佳方式是什麼? system(),popen()?
感謝您的回答。
嗯,我找到了一個很好的解釋解決了我的問題。
char *argv[] = { "/usr/bin/logger", "help!", NULL };
static char *envp[] = {
"HOME=/",
"TERM=linux",
"PATH=/sbin:/bin:/usr/sbin:/usr/bin", NULL };
return call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC);
我需要使用call_usermodehelper系統調用。這個例子是不言自明的。 來源:http://www.ibm.com/developerworks/linux/library/l-user-space-apps/index.html
二進制是一個內核模塊或用戶空間應用????需要更多關於外部二進制的說明。 – Jeyaram 2012-07-16 11:32:06
用戶空間應用程序。 – fazineroso 2012-07-16 11:47:01
我希望[這](http://stackoverflow.com/questions/6861909/popen-vs-system-is-popen-as-evil-as-system)會幫助你。 – Jeyaram 2012-07-16 11:56:36