From dave at horsfall.org Tue Jan 8 06:30:32 2019 From: dave at horsfall.org (Dave Horsfall) Date: Tue, 8 Jan 2019 07:30:32 +1100 (EST) Subject: [COFF] In memoriam: John Mauchly Message-ID: We lost a co-inventor of ENIAC, John Mauchly, on this day in 1980. ENIAC is claimed to be the "first general purpose electronic digital computer", but I guess it comes down to a matter of definition[*], as every culture likes to be the "first" (just ask the Penguins, for example); for "computer" you could go all the way back to the Mk-I Antikythera (Hellenic variation, from about the 100BC production run)... [*] Analogue/digital/hybrid Mechanical/electrical/electronic/hybrid General/special Wired/programmable/Turing Prototype/production Harvard/Neumann/quantum Etc... -- Dave From dave at horsfall.org Thu Jan 10 07:09:50 2019 From: dave at horsfall.org (Dave Horsfall) Date: Thu, 10 Jan 2019 08:09:50 +1100 (EST) Subject: [COFF] Happy birthday, Donald Knuth! Message-ID: Computer pioneer Donald Knuth was born on this day in 1938; amongst other things he gave us the TeX typesetting language, and he's still working on "The Art Of Computer Programming" fascicles (I only got as far as the first two volumes). I really must have a look at his new MMIX, too; I love learning new programming languages (I've used about 50 the last time I looked, and I'm happy to post a list for my coterie of disbelievers). -- Dave From ca6c at bitmessage.ch Thu Jan 10 09:01:12 2019 From: ca6c at bitmessage.ch (=?UTF-8?Q?C=C3=A1g?=) Date: Wed, 09 Jan 2019 17:01:12 -0600 Subject: [COFF] [TUHS] Isaacson v Unix [really RMS bashing] In-Reply-To: <201901062341.x06NfXe2021557@darkstar.fourwinds.com> References: <201901062341.x06NfXe2021557@darkstar.fourwinds.com> Message-ID: Since y'all started it... 1. Close to 100% of gah-noo projects violate the Unix philosophy, the Worse is better philosophy, the KISS principle, minimalist philosophies etc. Take just about any of the ``core'' projects, like glibc, as an example, starting with getopt_long, which lets a developer create PowerShell-like-named arguments, that are ``human readable''; and ending with its static linking abilities, which needs no further ranting. It is in addition to the lead developer's attitude. 2. Close to 100% of GNU projects that simulate classic Unix utilities introduce GNU'isms, one of them being already presented in the previous point. Sometimes it goes very far, so we cannot call the Linux kernel as being written in C, but rather the ``GCC C'' dialect. The musl and Clang projects demonstrate how much it takes to being able to replace the respective components while maintaining compatibility. 3. GNU has never been about quality. In fact, the aforementioned GCC and glibc let developers write more and more bad code. 4. GNU and FSF have never been technical movements, they are political movements that serve the interests of rms, and should be called as such. There are other projects that you all know and they don't need additional ranting: GRUB, info, Autohell, GTK+, GNOME, and on top of this, GPL. (HURD is a joke, so not included). -- caóc From dave at horsfall.org Thu Jan 10 16:09:53 2019 From: dave at horsfall.org (Dave Horsfall) Date: Thu, 10 Jan 2019 17:09:53 +1100 (EST) Subject: [COFF] Mark V. Shaney Message-ID: Another weird question from my warped mind... Would anyone happen to have a copy of the (in)famous Mark V. Shaney software (written by Bruce Ellis, I believe) that they coud share with me? I did get it under an NDA from Chris Maltby (who was at Softway at the time, I think) but it got lost during my dreaded house move (itself a long story which I don't feel like sharing for a while). Are you here, Chris? Yes, I used it on Amateur ("ham") packet radio to annoy someone, and it sucked in not a few people who were wondering just what the hell he was imbibing/smoking at the time... I think the Statute of Limitations is now over :-) Thanks. -- Dave From clemc at ccc.com Fri Jan 11 00:24:33 2019 From: clemc at ccc.com (Clem Cole) Date: Thu, 10 Jan 2019 09:24:33 -0500 Subject: [COFF] Happy birthday, Donald Knuth! In-Reply-To: References: Message-ID: This was sent to me by one of my old DEC co-workers over the holidays, an interesting read: Don Knuth ᐧ On Wed, Jan 9, 2019 at 4:10 PM Dave Horsfall wrote: > Computer pioneer Donald Knuth was born on this day in 1938; amongst other > things he gave us the TeX typesetting language, and he's still working on > "The > Art Of Computer Programming" fascicles (I only got as far as the first two > volumes). > > I really must have a look at his new MMIX, too; I love learning new > programming > languages (I've used about 50 the last time I looked, and I'm happy to > post a > list for my coterie of disbelievers). > > -- Dave > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: From david at kdbarto.org Fri Jan 11 00:52:49 2019 From: david at kdbarto.org (David) Date: Thu, 10 Jan 2019 06:52:49 -0800 Subject: [COFF] Most folks here started their OS learning with Unix Message-ID: Myself it was v6 (most likely the typesetter version). What I’d like to see discussed is how people today learn to write, enhance, design, and otherwise get involved with an OS. When I was teaching at UCSD my class on Unix Internals used writing a device driver as the class project and covered an overview of the Unix OS using the Bach book. Even then (the late 80’s) it was hard to do a deep dive into the whole of the Unix system. Today Linux is far too complex for someone to be able to sit down and make useful contributions to in a few weeks possibly even months, unlike v6, v7 or even 32v. By the time of BSD 4.1[a,b,c] and 4.2 those had progressed to the point that someone just picking up the OS source and trying to understand the whole thing (VM, scheduling, buffer cache, etc) would take weeks to months. So what is happening today in the academic world to teach new people about OS internals? David From ralph at inputplus.co.uk Fri Jan 11 01:09:07 2019 From: ralph at inputplus.co.uk (Ralph Corderoy) Date: Thu, 10 Jan 2019 15:09:07 +0000 Subject: [COFF] Most folks here started their OS learning with Unix In-Reply-To: References: Message-ID: <20190110150907.2113F203A9@orac.inputplus.co.uk> Hi David, > So what is happening today in the academic world to teach new people > about OS internals? Do you know of https://en.wikipedia.org/wiki/Xv6 ? -- Cheers, Ralph. https://plus.google.com/+RalphCorderoy From clemc at ccc.com Fri Jan 11 01:23:47 2019 From: clemc at ccc.com (Clem Cole) Date: Thu, 10 Jan 2019 10:23:47 -0500 Subject: [COFF] Most folks here started their OS learning with Unix In-Reply-To: References: Message-ID: The architects of MIT's 6.828 course "Operating Systems Engineering") were unsatisfied with the current stable of systems for teaching, so they did a reimplementation of 6th Edition in modern ANSI C (with a couple of GNU extensions for things like assigning names to registers) targeting a multiprocessor x86. As I look it, it is a clean interesting, and accessible piece of work. As the person that mentioned it to be said: "a modern take on a classic" - the course if being offered this fall at the URL: 6.828 / Fall 2014 The latest xv6 source is available via git clone git://pdos.csail.mit.edu/xv6/xv6.git Tools are can be found at: 6.828 / Fall 2014 Using the MIT course or the Lion's text will teach how the kernel works and how a user program interacts with it. IMO: Lion's commentary is super and 100% of the source is there to read and ponder. Please remember that generations of the best kernel hackers started with this document (although some of us predate it - but when I saw it I made a copy). And as I said, I just looked at the MIT documents and they are awesome too; but I have just opened them up and have not yet gotten a chance to try the exercises. What is even cooler is if you want to try xv6 - it will just run on your system using QEMU (which the MIT folks point too - they even made some mods to QEMU to help with their project). ᐧ On Thu, Jan 10, 2019 at 10:00 AM David wrote: > Myself it was v6 (most likely the typesetter version). > > What I’d like to see discussed is how people today learn to write, > enhance, design, and otherwise get involved with an OS. > > When I was teaching at UCSD my class on Unix Internals used writing a > device driver as the class project and covered an overview of the Unix OS > using the Bach book. Even then (the late 80’s) it was hard to do a deep > dive into the whole of the Unix system. > > Today Linux is far too complex for someone to be able to sit down and make > useful contributions to in a few weeks possibly even months, unlike v6, v7 > or even 32v. By the time of BSD 4.1[a,b,c] and 4.2 those had progressed to > the point that someone just picking up the OS source and trying to > understand the whole thing (VM, scheduling, buffer cache, etc) would take > weeks to months. > > So what is happening today in the academic world to teach new people about > OS internals? > > David > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: From clemc at ccc.com Fri Jan 11 01:26:33 2019 From: clemc at ccc.com (Clem Cole) Date: Thu, 10 Jan 2019 10:26:33 -0500 Subject: [COFF] Most folks here started their OS learning with Unix In-Reply-To: References: Message-ID: BTW: that was cut/pasted from my quora answer: Clem Cole's answer: Which Linux kernel version's source code is better for newbie to read? ᐧ ᐧ On Thu, Jan 10, 2019 at 10:23 AM Clem Cole wrote: > The architects of MIT's 6.828 course "Operating Systems Engineering") were > unsatisfied with the current stable of systems for teaching, so they did a > reimplementation of 6th Edition in modern ANSI C (with a couple of GNU > extensions for things like assigning names to registers) targeting a > multiprocessor x86. > > As I look it, it is a clean interesting, and accessible piece of work. As > the person that mentioned it to be said: "a modern take on a classic" - the > course if being offered this fall at the URL: 6.828 / Fall 2014 > > > The latest xv6 source is available via > git clone git://pdos.csail.mit.edu/xv6/xv6.git > > > Tools are can be found at: 6.828 / Fall 2014 > > > Using the MIT course or the Lion's text will teach how the kernel works > and how a user program interacts with it. IMO: Lion's commentary is super > and 100% of the source is there to read and ponder. Please remember that > generations of the best kernel hackers started with this document (although > some of us predate it - but when I saw it I made a copy). > > And as I said, I just looked at the MIT documents and they are awesome > too; but I have just opened them up and have not yet gotten a chance to try > the exercises. > > What is even cooler is if you want to try xv6 - it will just run on your > system using QEMU (which the MIT folks point too - they even made some mods > to QEMU to help with their project). > ᐧ > > On Thu, Jan 10, 2019 at 10:00 AM David wrote: > >> Myself it was v6 (most likely the typesetter version). >> >> What I’d like to see discussed is how people today learn to write, >> enhance, design, and otherwise get involved with an OS. >> >> When I was teaching at UCSD my class on Unix Internals used writing a >> device driver as the class project and covered an overview of the Unix OS >> using the Bach book. Even then (the late 80’s) it was hard to do a deep >> dive into the whole of the Unix system. >> >> Today Linux is far too complex for someone to be able to sit down and >> make useful contributions to in a few weeks possibly even months, unlike >> v6, v7 or even 32v. By the time of BSD 4.1[a,b,c] and 4.2 those had >> progressed to the point that someone just picking up the OS source and >> trying to understand the whole thing (VM, scheduling, buffer cache, etc) >> would take weeks to months. >> >> So what is happening today in the academic world to teach new people >> about OS internals? >> >> David >> _______________________________________________ >> COFF mailing list >> COFF at minnie.tuhs.org >> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From crossd at gmail.com Fri Jan 11 01:39:20 2019 From: crossd at gmail.com (Dan Cross) Date: Thu, 10 Jan 2019 10:39:20 -0500 Subject: [COFF] Most folks here started their OS learning with Unix In-Reply-To: References: Message-ID: On Thu, Jan 10, 2019 at 10:00 AM David wrote: > Myself it was v6 (most likely the typesetter version). > > What I’d like to see discussed is how people today learn to write, > enhance, design, and otherwise get involved with an OS. > > When I was teaching at UCSD my class on Unix Internals used writing a > device driver as the class project and covered an overview of the Unix OS > using the Bach book. Even then (the late 80’s) it was hard to do a deep > dive into the whole of the Unix system. > > Today Linux is far too complex for someone to be able to sit down and make > useful contributions to in a few weeks possibly even months, unlike v6, v7 > or even 32v. By the time of BSD 4.1[a,b,c] and 4.2 those had progressed to > the point that someone just picking up the OS source and trying to > understand the whole thing (VM, scheduling, buffer cache, etc) would take > weeks to months. > > So what is happening today in the academic world to teach new people about > OS internals? > I'm a kernel engineer, but I don't have much of a formal background in computer science; my training was in mathematics. However, I audited the MIT OS course about a year ago (my office is across the street from campus and Robert Morris and Adam Belay were kind enough to let me sit in on the class and pester them with questions). They used JOS, which has a fairly unique architecture, and xv6, which is a "modern" re-implementation of most of v6. I've seen some universities try to cover Linux (I believe my alma mater, Columbia, does this), and I imagine that what that means is that they talk about various subsystems at a relatively high level and give some very focused programming assignments. In the 90s there was a flurry of "teaching" operating systems. Things like NACHOS and some successor systems were popular. I suspect Minix remains popular in some circles, though I don't know. I remember once in the 90s talking to some sysadmins; one of the Unix guys got talking to the local VMS guru (who, by the way, was an amazingly talented programmer--probably one of the best I've ever seen before or since). They got to arguing about the merits of the respective systems and the Unix guy incredulously said, "Unix is the textbook operating system..." to which the VMS guy replied, "yeah, because the textbook was written about Unix...". That's kind of a true statement and has always sort of stuck with me. The systems that influence me personally the most in my day-to-day work are plan9, Unix, VMS (also in its other guise as Windows), Akaros, and to a lesser extent L4, Multics, TOPS-20 and Minix. - Dan C. -------------- next part -------------- An HTML attachment was scrubbed... URL: From will.senn at gmail.com Fri Jan 11 02:41:15 2019 From: will.senn at gmail.com (Will Senn) Date: Thu, 10 Jan 2019 10:41:15 -0600 Subject: [COFF] Isaacson v Unix [really RMS bashing] In-Reply-To: References: Message-ID: <3d047569-dad3-5693-619a-898cb4655d71@gmail.com> > On Jan 6, 2019, at 11:36 PM, on TUHS Andy Kosela > wrote: > >> On Sun, Jan 6, 2019 at 9:01 PM A. P. Garcia >> wrote: >> >> >> >>> On Sun, Jan 6, 2019, 9:39 PM Warner Losh >> >>> >>> >>>> On Sun, Jan 6, 2019, 7:06 PM Steve Nickolas >>> >>>> On Sun, 6 Jan 2019, A. P. Garcia wrote: >>>> >>>> If not for GNU, Unix would still have been cloned. Net/2 happened in >>>> parallel, did it not? >>> >>> >>> Berkeley actively rewrote most of unix yes. Net/1 was released about >>> the same time GNU was getting started. Net/2 and later 4.4 BSD >>> continued this trend, where 4.4 was finally a complete system. >>> BSD386 only lagged Linux by about a year and had much stronger >>> networking support, but supported fewer obscure devices than linux... >>> >>> Warner >>> >>> Ps I know this glosses over a lot, and isn't intended to be pedantic >>> as to who got where first. Only they were about the same time... and >>> I'm especially glossing over the AT&T suits, etc. >> >> >> It's really hard to say. How would you compile it? Clang didn't come >> along until 2007. The Amsterdam Compiler Kit, perhaps? > > I find it ironic that BSD people are so quick to bash RMS, yet they > have been using his tools (gcc and various utils) for years... By > reading this thread it appears there are more people that have > personal issues with RMS than technical ones. I find usually there > are two sides to each story though. > > One side is eloquently presented in 2001 movie "Revolution OS"[1] > starring RMS amongst others. > > [1] https://www.youtube.com/watch?v=4vW62KqKJ5A > > --Andy > > --Andy I know a lot of folks seek adulation and acclaim. They can’t seem to help themselves. Often, they deserve more recognition than they deserve, other times not. As I have sought information regarding the history of UNIX, it has as often as not involved personal narrative of those who were involved in that history. Thankfully, a lot of those folks are alive and reasonably cogent. This is a treasure that deserves appreciation. However, to say that so and so invented/discovered such and such is to make little the environment, resources, patronage, gestalt, and even the zeitgeist. Who discovered Oxygen? Lavosier? Did Pascal save the world? Read Bruno Latour’s work for a different perspective on science and discovery. Particularly, Science in Action or Laboratory Life. Discovery is rarely, if ever, a solo activity, contrary to a lot of hype and romanticization in the literature and media. With regard to who wrote what code... I’ve written a lot of it, that I personally designed. That code still lives in binary form that runs on devices that folks use to this day. However, while my code is probably still, as originally written, in the heart of many running systems, it is certain that many of these system have been enhanced beyond recognition. I guarantee you I didn’t do the extensions (I get bored way to easily). So, if you look at the system today and ask who wrote it, who wrote it? I would contend that while I wrote the key abstractions that allowed these systems to come into existence, others also wrote code to make the systems what they are today and without those contributions, they would be lesser systems. I love ancient UNIX, thank you Ken Thompson, Dennis Ritchie, DEC, Bell Labs management, those Multics folks, IBM, etc :). But I work, everyday, on a mid-2012 15” Aluminum Unibody Macbook Pro with an Intel processor and Hynix ram, some Chinese SSD, and who knows what else... Thank you Steve Jobs and hosts of thousands for making this miracle possible. Oh, and yes, I daily use gcc/gdb (although, I’d prefer clang/lldb because it comes with no associated community whining), so thank you RMS. Later, Will From michael at kjorling.se Sat Jan 12 22:25:26 2019 From: michael at kjorling.se (Michael =?utf-8?B?S2rDtnJsaW5n?=) Date: Sat, 12 Jan 2019 12:25:26 +0000 Subject: [COFF] Stanford uploads >100 Knuth lectures Message-ID: <20190112122526.tlnemij2fapsvt57@h-174-65.A328.priv.bahnhof.se> This looks like something that could be of interest to people here. I haven't yet looked at what's included, but do plan to. https://www.youtube.com/playlist?list=PL94E35692EB9D36F3 "Donald Knuth Lectures" Via https://virtuallyfun.com/wordpress/2019/01/12/stanford-uploads-111-lectures-by-donald-knuth/ -- Michael Kjörling • https://michael.kjorling.se • michael at kjorling.se “The most dangerous thought that you can have as a creative person is to think you know what you’re doing.” (Bret Victor)