4 ms·
This is somewhat ironic considering Linux is written in C, which is the most stubbornly "one thing at a time" language in widespread use today.
by hoosieree 8y ago
This is somewhat ironic considering Linux is written in C, which is the most stubbornly "one thing at a time" language in widespread use today.
- twtw 8y agoIt's not ironic at all. C doesn't not do anything promoting a syscall per byte. Even if you think that's what you are doing, libc is probably buffering for you behind the scenes.
- LukeShu 8y agoIf you're using fopen(3) "stdio" (buffered I/O), then yeah, fread(3) and friends will buffer. But if you're using open(2) and read(2), libc's not going to buffer that.
- umanwizard 8y agoFor example?
- hoosieree 8y ago- C-style strings are null-terminated, with no information about their length - no equivalent of "for item in items" or "map" because no native data type has any concept of its length - array-to-pointer decay Modern assembly languages - for processors that have SIMD or AVX instructions - are more natively able to deal with several things at one time than C is.