2 ms·
By "system libc" I'm only referring to msvcrt.dll, found in the Windows directory. Quoting Raymond Chen: > At some point, the decision was made to just give up
by dwattttt 1mo ago
By "system libc" I'm only referring to msvcrt.dll, found in the Windows directory. Quoting Raymond Chen:
> At some point, the decision was made to just give up and declare it an operating system DLL, to be used only by operating system components.
https://devblogs.microsoft.com/oldnewthing/20140411-00/?p=1273 https://devblogs.microsoft.com/oldnewthing/20140411-00/?p=12...
- delta_p_delta_x 1mo agoI think the grander point is that there is no real 'system CRT' on Windows; as I mentioned, there are multiple entry points each at an appropriate level of abstraction available to both platform and application developers (not that there is a real difference between the two, since platform developers may also write applications like Office). Many Windows platform libraries (WIL, for instance) themselves use UCRT instead of MSVCRT now. The latter exists, but it is by no means and has not ever been by any means the single entry point to the Windows platform, unlike glibc on most desktop Linux distributions.
- okanat 1mo agoYou can completely skip all CRTs on Windows and still have a program that can call dynamic loader and other Win32 APIs. Here is a tutorial: https://nullprogram.com/blog/2023/02/15/ https://nullprogram.com/blog/2023/02/15/ When you link with UCRT your specific program just gets a "view" of standard C functions. You can load DLLs that were linked with MSVCRT from a UCRT program. It just works
- dwattttt 1mo agoThat's a pretty great article. Re. the stack probes, it's not hard to supply your own; Raymond Chen recently did a blog series on stack probes, the entries for amd64 and arm64 are here: amd64: https://devblogs.microsoft.com/oldnewthing/20260319-00/?p=112152/ https://devblogs.microsoft.com/oldnewthing/20260319-00/?p=11... arm64: https://devblogs.microsoft.com/oldnewthing/20260320-00/?p=112154/ https://devblogs.microsoft.com/oldnewthing/20260320-00/?p=11...