On Tuesday, 28 June 2011 at 10:11:40 +1000, Warren Toomey wrote:
I'm having some trouble thinking of the right way to explain what is
an elegant design at the OS/syscall level, so any inspirations/ideas
would be most welcome. I might highlight a couple of syscall groups:
open/close/read/write, and fork/exec/exit/wait.
The system call interface is one thing, but I'm not sure it's the most
important one. Older operating systems (in my experience, IBM OS/360
and UNIVAC Omega and OS 1100) had similar interfaces. Omega also had
the concept of integer file descriptors (including 0, 1 and 2
preassigned). All of these systems had open/close/read/write, for
example.
I came to UNIX relatively late, and my first impression wasn't
favourable. It took me a while to realise what the real advantages
were. For me, they're:
- Text files. At the time, any data of any importance was stored in
custom-designed file formats. That was more efficient, both in
terms of processing time and space, but it made things difficult if
anything went wrong.
- The file system itself. I think the design of the file system,
especially the separation of names and the files themselves, but
also special files, is one of the most far-reaching designs I've
ever come across. To this day, I haven't found anything that even
comes close.
You might also get some ideas from
http://en.wikipedia.org/wiki/Unix_philosophy
Greg
--
Finger grog(a)FreeBSD.org for PGP public key.
See complete headers for address and phone numbers.
This message is digitally signed. See
http://www.lemis.com/grog/email/signed-mail.php for more details.
If your Microsoft MUA reports problems, please read
http://tinyurl.com/broken-mua