On Tue, May 22, 2012 at 06:59:25PM -0700, Wolfgang S. Rupprecht wrote: > The first sync was to queue up the blocks to be written. That sync(1) > call would not block. The second call would block until the flush > finished. The third one was just for luck. Or something.
"Just to be sure." Sync under Unix used to be systemwide--dunno if that was changed later, or is different in Linux. But it caused some major headaches--essentially, any user could cause the system to stop what it was doing and sync. Not too bad if there are only a few users. Very bad if there are, say, 300 users. Back around 1983 or so, I was on contract at at Bell Labs working on the 5ESS Field Test Set. (This was the first portable Unix system--an 8086 with a custom MMU running System III in a box that _just_ fit under an airline seat; weighed about 40 pounds. Booted from a floppy--my work, that. I walked in one day with a floppy drive on my desk, and a note that "we need a diskette driver written for the FTS by Friday." My introduction to driver design in Unix...by fire.) ANYWAY, one day the development server just...slowed...to...a...crawl. As there were a few hundred users, and we were desperately trying to get 5ESS out the door, this was a Bad Thing(TM). The OS support staff couldn't find anything wrong with the system; we had everyone who knew anything looking for the cause. About this time, a new guy came to me to show me his nifty vi macro. He was absolutely paranoid about losing anything he was editing if the system crashed. SO, he wrote a macro that did "sync;sync;sync"...after *every* keystroke. We'd found our problem. Cheers, -- Dave Ihnat dih...@dminet.com -- users mailing list users@lists.fedoraproject.org To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines Have a question? Ask away: http://ask.fedoraproject.org