2
A
回答
7
'kernel32.dll'也會轉換爲libc.so.6。由於Windows不是POSIX的最低級別,因此它需要一個額外的層來將POSIX libc調用轉換爲本地Win32調用。這是msvcrt.dll的用途。 Kernel32.dll包含最低級別的調用。在Linux上,這些系統調用已經是POSIX,所以不需要額外的庫。
0
2
libc相當於Linux中的kernel32,標準庫的GNU擴展處理所有可以調用內核的方式。 (從技術上來說,是的libc NTDLL的相當,但不倫不類)
編輯:只是爲了澄清 - 內核本身出口的一些所謂以特殊的方式被稱爲系統調用函數;這些系統調用被實際功能包裝;在Linux上,這是在libc中完成的,在Windows上完成兩次,一次是ntdll(即NtCreateFile),然後是Kernel32(CreateFileW/A)。
Kernel32提供了許多其他函數,它們不是系統調用(即在用戶模式下保持100%),就像libc一樣。
4
msvcrt.dll與libc.so.6沒有什麼可比性,因爲第一個是VC++(msvcrt - > MicroSoft Visual C++ RunTime)的特定DLL。系統調用(open,close,read,write等)也在libc中。它們只是用匯編語言編寫的軟件中斷的簡單包裝。
1
我想你可能會尋找:
linux-vdso.so.1 => (0x00000...)
這是「虛擬圖書館」鏈接Linux內核。
你的內核頭文件會給你API的詳細信息。
用快速谷歌發現了這個。
相關問題
- 1. 什麼是SPIN_LOCK_UNLOCKED的Linux 3.16等價物?
- 2. Linux上_emit的等價物是什麼?
- 3. 什麼是termiox.h的Linux等價物?
- 4. 什麼是在Linux/Unix中轉發DLL的等價物?
- 5. 什麼是在C#中的C++隱式鏈接DLL等價物?
- 6. Linux上VIsual C++的_waccess()的等價物是什麼?
- 7. 什麼是Window的GetAsyncKeyState的Linux等價物?
- 8. 使用linux的mysql中C:/的等價物是什麼?
- 9. 什麼是Python的os.walk的等價物?
- 10. 什麼是PHP的preg_quote的等價物?
- 11. 什麼是Hub的HttpContext.GetOwinContext()的等價物?
- 12. MessageFormat的Pattern.quote()的等價物是什麼?
- 13. Linux下AutoResetEvent的C++等價物是什麼?
- 14. Apple(Apple.awt.graphics.UseQuartz)的Windows(和Linux?)等價物是什麼?
- 15. 什麼是Microsoft ASP.NET和Visual Studio for Linux的等價物?
- 16. linux上rpath規範的@loader_path等價物是什麼?
- 17. 什麼是Process.Start的VB 6等價物?
- 18. 什麼是android中的dataWithContentsOfURL等價物?
- 19. rlwinm的C++等價物是什麼? (PowerPC)
- 20. 什麼是HttpContext.Current.Request.RawUrl的WCF等價物?
- 21. RDFlib中rdf:ID的等價物是什麼?
- 22. Monotouch中的CGPDFDocumentGetCatalog等價物是什麼?
- 23. 什麼是'document.getElementsByClassName'的Prototype 1.6.0+等價物?
- 24. 什麼是C++中的instanceof等價物?
- 25. 什麼是OS X的UIGraphicsGetCurrentContext()等價物?
- 26. 什麼是DB2的Varchar(Max)等價物?
- 27. 什麼是VC7中的strtok_s等價物?
- 28. Unity 5.3:什麼是UnitEngine.Application.loadedLevel的等價物?
- 29. 什麼是EventWaitHandle的Objective C等價物?
- 30. 什麼是PHP var_dump的.NET等價物?
這不完全準確 - 大多數msvcrt函數都是在* msvcrt本身中處理的,像strtok這樣的東西肯定不會進入內核! – 2009-06-12 19:25:12