From mboxrd@z Thu Jan 1 00:00:00 1970 From: txomsy@yahoo.es (Jose R Valverde) Date: Mon, 10 Oct 2005 11:37:24 +0200 (CEST) Subject: [TUHS] Ancient unixes Message-ID: <20051010093724.48531.qmail@web26103.mail.ukl.yahoo.com> Waddayamean? I mean: what does it mean to you 'the spirit of ancient Unix'? If by that you mean the fact that they were simple, slim and efficient, doing one simple thing and doing it right, you may then consider the effort by ast in the 80's with MINIX. OK, it used it's own microkernel, but the basic idea is the same... and has been followed on by Mach, BSD-lites, Flex, MacOS X, Tru64, Linux on L4, etc... As a matter of fact I always felt UNIX after v7 got it wrong: e.g. network data is no longer another stream (I'd have loved it to be a file system with directories representing network addresses and ports being files or pipes). Thus, later unices increased complexity by abandoning the simlicity of the original design. If that is the case, Plan 9 is a good update. And so is Inferno. Actually, I always felt that many additions to UNIX might have been better implemented outside the kernel if only the kernel had been expanded to allow user-mode expansions. But that's already here with kernel modules in Linux, BSDs, Solaris, etc... which are becoming more and more microkernelized each day. As microkernels become bigger :-) OTOH, if you mean adding 'modern' services, perhaps QNX is doing it with its support for Real-time. Or adding dynamic libraries, networking, modern virtual memory (beyond swapping), etc... which at the plainest level is what more or less likeably all modern UNIX have done. Extending into the future? Distributed computing, clusters, etc? Like some commercial UNIX, Amoeba, Inferno and the like? If you only mean resurrecting these ancient UNIX on modern hardware, there have been initiatives to rewrite v7 alike systems for other architectures (say OMU, UZI, MINIX, Coherent, Xinu, etc.). But for that you already have emulators that provide you the original flavor at even higher speeds in a virtualized environment. So? waddayamean? I think the answer to your question is YES! Lots of people have tried to improve ancient UNIX more or less successfully, and many people is still trying, using microkernels, no-kernels, adding RT, VM, dynamic libraries, kernel modules, etc... Each with their own approach. This said, if I were to pick an initiative that gets closest to the wishes of the original designers, that should undoubtedly be Plan 9 and its successor, Inferno, as they are what the 'Original Designers' themselves have done when they tried to repeat it doing it 'right' (or at least better) no matter what my personal opinions regarding the issue may be. Regarding my opinion, yes, I would go for the good old leather-bound days of IBM mainframes with MVS. (zOS?) which oddly enough are finally reaching the rest of us with Xen and emulators like QEMU. If I were to wish, I'd like a no-kernel approach (everything independent, cooperating, hot-substitutable, fully migratable processes) over a virtualizing system that allows me to run several OSs and update/change any OS component on the fly without service interruption, and to migrate everything between machines on demand ('cos of overload or hw failures or whatever, or just 'cos I wish to). Now, _that_ would IMHO be close to ultimate OS design: something that can always be updated on the fly and may survive any change, something that can adapt and evolve without interruption or even the user noticing. But that is a complex enough concept to expect most system programmers to grasp, let alone sysadmins, programmers or users not to pervert. Not to talk of salesmen and marketroids! j -- Jose R. Valverde EMBnet/CNB ______________________________________________ Renovamos el Correo Yahoo! Nuevos servicios, más seguridad http://correo.yahoo.es