On the design of the SYSENTER Intel syscall instruction, and how the elegant idea fell apart https://groups.google.com/forum/m/#!topic/comp.arch/CjDs4MJCBow%5B1-25%5D …pic.twitter.com/VIZlsh87cE
You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more
@RichFelker reminds me of one of the many strategies Synthesis OS (http://valerieaurora.org/synthesis/SynthesisOS/ …) used to avoid syscall overhead
@RichFelker it JIT-compiled syscall functions to avoid unnecessary paths, including minimal register saving/restoring
@RichFelker (of course this was 1992, so the entire lockless JIT kernel was written in 68K assembly)
@RichFelker I highly recommend reading at least some of it, it has all kinds of fun nonsense, all in the name of 44100hz interrupts on a 68K
@fioraaeterna @richfelker rofl the interrupt timer runs at audio samplerate frequencies?
@bofh453 @RichFelker IIRC she wanted to do low latency audio processing but her kernel was too slow, so she wrote her own kernel
@fioraaeterna @richfelker that's *amazing*, I strongly approve.
@bofh453 @RichFelker she also wrote the original superoptimizer
@FioraAeterna If everything were call-clobbered that would help. But sheer over-long code paths are also a big part of the problem...
@RichFelker @FioraAeterna Caller or callee, doesn't matter; used registers have to be saved.
@SamuelAFalvoII @FioraAeterna Caller doesn't have to save any ABI-call-clobbered registers it's not currently using. That's almost all.
@RichFelker @FioraAeterna But in POSIX, anytime you return from a system call, you might have to dispatch to a signal handler, no?
@SamuelAFalvoII @FioraAeterna If the syscall was already entitled to clobber those regs, signal handler is entitled to just save junk.
@RichFelker @FioraAeterna Fair enough; another question arises though: context switches. Many OSes use syscall returns to switch contexts.
@SamuelAFalvoII @FioraAeterna Again, if you switch contexts at syscall time & syscall clobbers regs, those regs don't need to be saved.
@SamuelAFalvoII @FioraAeterna Registers only need to be saved when they're meaningful to the (asynchronously) interrupted task.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.