240 karma · joined May 6, 2015
They should change it to: молодец.
For M:N, there are N kernel stacks.
The result is the same though; I forgot that signal mask is not reset on exec. Damn POSIX signals!
I don't understand your optimization. ZF is also set for dec, so why not just use dec and not negate the size?
Maybe he did not want to do OS interface research.
My point was not that TOC is fundamentally different from generational collection.
Supporting POSIX is necessary if the designer wants the OS to run real software.
Seems like the main advantage of this transaction oriented collector over a typical generational collector is that it precisely identifies the old-to-young pointers and thus may scan less total objects.
You can expect at least one in any thread criticizing any country that isn't the USA!
I don't buy the rest of your post for two reasons. First, partitions are not only problematic for writes. Externally consistent systems also cannot generally serve reads during a partition either. Furthermore, it is not true that partitions are not a realistic worry - i know of at least one large system that encounters partitions on a weekly basis.
Second, you seem to be arguing that for some reason it is easier to solve consensus at the application level. This is simply not true, otherwise we wouldn't have consistent databases.
If you mean "block waiting for all replicas to respond", then the failure mode is quite different from Paxos. I don't know of one such system that can tolerate two simultaneous failures or network partitions, unlike Paxos.
The doom marine in me demands a poster for Phobos!
I find it even more worrisome that some compare this mistake to accidental clobbering of /dev/sd?.
Once the performance was similar to competing OSes, the measurements from my performance experiments were varying by 30%! This was surprising because the benchmark was simple and the performance of competing OSes was completely stable.
Well after three or four days of frustration, I discovered that the problem was our test hardware: for whatever reason, immediately after BIOS POST, any memory loads executed for the next 10 seconds were 30% slower than memory loads executed almost exactly 10 seconds after BIOS POST. Initially I was shocked, but this may make sense -- it seems plausible that hardware manufacturers would run initialization code in the background resulting in quicker boot times.
Anyway, after we figured that out we simply waited 10 seconds after POST before we ran any experiments. I'm curious how common this slow-for-the-first-10-seconds thing is with other x86_64 machines.
Edited for clarity.
http://i.imgur.com/YpOQXet.jpg
Work required that I restarted this machine frequently -- it would fault during boot probably 1/20 times.
I highly recommend that anyone interesting in learning Paxos study this pseudo code from MIT's distributed systems class; it was the single thing that helped me understand Paxos most: