4 ms·
The reality is you just don't need to write a whole lot of assembly day-to-day so using what the tools support best tends to be the path of least resistance. X
by swetland 13y ago
The reality is you just don't need to write a whole lot of assembly day-to-day so using what the tools support best tends to be the path of least resistance.
Xv6 itself has about 5000 lines of .c and 364 lines of .S in the kernel. Another 1500 lines in vectors.S but that's machine generated. There's a ton of stuff one could add to Xv6 (drivers, syscalls, services, etc), almost all of which one would likely just write in C.
In practice, I've found assembly mostly used for some hand-tuned inner loops (codecs, memcpy, etc) and little snippets of glue code like entry.S, swtch.S, etc.