 Hello guys. Please find a seat and Then we can start with the next talk The last one for the history so the end of history of this foster Will be presented by Liam proof He's working with Susie and he's working with Unix since 1988 so he knows quite some history and He's a technical writer. So please enjoy Generation that gaps miss the improvement Thank you very much Hello, good afternoon. Thank you for coming to my talk My plan today is to commit heresy. I want to murder some deeply loved ideas Especially some beloved of the open source community and the Unix community If you're not okay with that then good because you might actually, you know find it interesting I'm going to talk about stuff that you probably already know But I will talk about things that you maybe don't know that you know There are things that we don't talk about in the history and the development of Open-source Unix software in general I'm here to tell you that these things are Although true not good things that they are toxic things harmful things things that are holding us back You might find it all a bit difficult and you might find it ridiculous So I'm gonna start quite slowly You know the cartoon Before I had to go and get a job. I worked in biology and Everybody misunderstands evolution They think that it's a progress of getting more complicated and getting better and more sophisticated and that is not at all how evolution works Evolution is random and chaotic and sometimes stuff gets weird So computers have been around for about 75 years now and In that 75 years a lot of people have spent a lot of time Arguing about generations of computers Well, I have a slightly different take on that The general belief is that each generation of computers is better than the generation before that it's obviously Faster that it's got more storage. It can do more Actually, that's not true Many times in the history and development of computing the new generation has been worse Than the generation that went before We have not always been adding new features adding new capabilities actually the big generation Transitions have been when we take them away When we make new computers that are inferior to the computers that went before I Touched on some of this a couple of years ago in a talk that you some of you might have seen So I'm gonna give you some examples Here is one of the first programmable digital computers. That's Eniak It was an American computer partly funded by the Department of Defense as so much was These things were huge and they were very expensive because they were hand built out of individual valves and so on They had just one type of storage And not very much of it just a few dozen words in the very first cases bites were invented later They could only hold one program at a time Which were written by hand in machine code on a piece of paper and then entered into the computer one bit at a time so Easy to manage They got a little bit bigger They got a bit more sophisticated and they got more memory and some very slow offline storage things like punched tape paper tape Punched cards this made programs and data quick as a load But the computer was still something where the workload was managed not by anything on the computer But by people it was a people problem to get somebody in get their software on the computer run it Results printed and out as quickly as possible And everything was handwritten in machine code. So every time you got a new computer you had to rewrite everything Then roughly at the end of the 50s came a huge distinction This is an IBM 701 and standing next to it is future president Ronald Reagan The images from IBM The thing about the early mainframe computers that Distinguished them from the computers that went before was not that they had more storage although they did It was that they had two types of storage One type was stored at first on little tiny magnetized rings Directly mapped into the processors address bus now we call that RAM The other type of storage was much bigger and much slower and much more expensive This is I believe the University College London. I'm not certain that is a five megabyte hard disk being delivered If you have to ask how much it cost you couldn't afford it The difference here was two types of storage This is what was called secondary storage So some of the storage is in the processors memory bus Some of the process much more some of the storage much more of it is on a device like that and It's accessed not by the memory bus, but by a controller The processor has to go and say to the controller right I need this block and it the controller goes and fetches it off the huge hard disk with mechanical parts moving and Puts it into a block of memory and you can work on it and then you can write it back this to level distinction Primary storage and secondary storage is very very important, and we don't talk about it much anymore and the problem is that It's so implicit Virtually every computer in about the last 60 65 years has had this split We all know it's there. We've taken it as read We take it as a given that you have memory and you have disks and you move stuff between them This is absolutely built into the structure of virtually all software in the world today It enabled a whole new generation of technology It enabled things like compilers where you have one program that reads another program Does something to it to produce a third program that you can run that created cobalt and Fortran and Made a market for computers very much bigger this the stretch pioneering machine a complete commercial failure first superscale our computer the first computer with 8-bit bytes The first computer with pipe lining remarkable machine They sold about six of them for roughly half the cost of building it But again once you've got compilers and you've got high level languages You rewrite everything all over again Then the next leap was not really a technical leap the next leap was a commercial leap It was a marketing leap again IBM invention At the time early 60s IBM sold multiple ranges of computers They sold things like the 701 and 1401 and 60 30 all totally different different number of bits per word Different operating systems different programming languages totally incompatible IBM had a very clever idea in the 60s and they invented the IBM system 360 This is the smallest model of IBM system 360 This is basically a single user personal computer that can just barely struggle through one programming language at a time The idea of system 360 was they could sell a whole range of different computers and they could all run the same software Not the same operating system. They offered lots of different operating systems for the s360 It was a huge success. It made them a great deal of money They continued to add and enhance the system 360 for years it became the system 370 and Now it's called z-series and the direct descendant of this computer If you bought an air ticket like me to come to FOSDEM your ticket was booked through the descendant of that computer running Compatible software if you paid for it with a credit card your money went through a bank account that was controlled by the offspring of one of these Again like evolution we Complex multicellular mammals evolved from simpler organisms which ultimately evolved from bacteria the bacteria are still there underneath There's more of them than us. There are more species of them than us There is more of them by mass as more of them by individuals. It doesn't go away. Nothing goes away But what's interesting about these is? They contributed very little to the next generation of computers Because the next generation of computers suddenly started to get smaller and cheaper Because of transistors because of integrated circuits This the first machine Unix was written on this is a PDP 7 it might have been even the same one in the slide earlier This only cost 72,000 pounds, sorry dollars a Department could afford to buy one of these they were shared at most by just a few people as opposed to a mainframe Which occupied a floor of a building and was shared by an entire company? This Was in virtually every way worse than a mainframe They were smaller They were stupider. They were slower. They had less memory. They had fewer instructions Mainframes had wonderful fancy smart terminals where the software on the terminal could collect Information from the user filling in a form and validate it and package it up and send it over a network to the mainframe These had a printer with a keyboard on the end of a serial line Mainframes had fantastic fast clever storage controllers Which could search and sort and index all their own data? And the mainframe could just send it an instruction that said find me all the people whose surname matches brown and It just happened they used a technology called query language for this There's one you've probably heard of SQL SQL structured query language originally from IBM Didn't get anything like that on these they had to manage their own disks manage their own blocks But they caught on they sold really well Just a year later. This was a smaller model only $18,000 150,000 today approximately They got cheap enough that now the computer could sit and wait for humans to input information This meant interactive software This meant all kinds of cool stuff like text editors From the mainframe you edited your text and punched it into a card and no computer need to be involved These smaller cheaper, but worse computers enabled a huge burst of creativity Now I'm going to do something a little bit meta. I would really like everybody to go and watch this presentation The future of programming and as you can see from the slide DBX conference July the 9th 1973 DBX's Dropbox He wasn't really presenting it in 1973. He presented it 40 years later But he dressed in a 70s outfit complete with a pocket protector and he presented from Acetate slides put on an OHP It's a wonderful period piece because he talks about What the next 40 years of software would develop and None of it happened You would be amazed at what was invented on these kind of computers at the time on big clunky mini computers They invented you probably seen the Doug Engelbart famous mother of all demos If you haven't you should really see that Video conferencing live video streams multimedia shared interactive workspaces in the 60s Invented on mini computers There was a huge variety of them deck for example The PDP 7 was an 18-bit mini computer But the PDP 11 which was the next machine they ported Unix to was a 16-bit mini computer deck also offered 12-bit and 36-bit machines at the same time and They all ran multiple different operating systems as well So this kind of stuff means that though there were lots of obsolete operating systems You've probably never heard of so for example The deck PDP 8 ran an operating system called OS 8 It very cleverly managed to encode file names into I think four words and The result was That the file name had a six character name followed by a dot followed by a three character extension I bet everybody here has computer files called dot JPG When it actually stands for JPEG JPEG, I bet you've all dealt with files called dot HTM Instead of HTML why because of OS 8 running on an RS are running on a deck RT Sorry running on the deck PDP 8 The PDP 8 also influenced a later machine from deck called a PDP 11 Which ran a different operating system called RT 11? It expanded the file names very slightly to 8.3 It also invented commands like copy and era and Dell and so on dir This stuff is all pervasive in your computers now the 32-bit successor to the PDP 11 was the Vax Programs on a Vax are called dot exe sound vaguely familiar These are all long gone. They're all long dead, but their influence is still deeply rooted in everything we run today one thing that did come out of those machines was the idea of flowed back up the price chain to interactivity IBM planned it really difficult to do interactivity in their big mainframe operating systems in the end They come up with a workaround. They wrote operating systems that could run under other operating systems So each user of the big multitasking mainframe had their own single user operating system talking to their terminal All multitasking on a totally different unrelated operating system. It's a hypervisor It's one of the very few things to make it from mainframes into mini computers and into computers today Because many computers got swept away by the descendants of this This was a $5,000 terminal With two kilobytes of RAM, but it could actually run its own software The company that built it gave a commission to a small California company called Intel to design them a single chip Intel failed they couldn't deliver on time. So this machine had its processor built out of the street components But Intel did finish that chip and it became the Intel 4004 which was upgraded to the 808 Which became the 8080 which became the 8088 which is you know the ancestor of what I'm presenting from So two big shifts Around the turning point from the 60s to the 70s the micro computer revolution. You all know about that There's another one that you might not have met So the first micro computers This was the one that started the Microsoft business empire. This is a mitts altar It ran Microsoft basic the first-ever program It's composed of separate cards You could buy it as a kit or you could buy it ready-made But there's a separate card for the processor a separate card for the memory a separate card for the disk controller And although you could flick switches on the front and operate it in binary It was much easier to plug a terminal in Then you could see listings on the screen and edit them but in virtually every way worse Than a mini computer. It was smaller. It was cheaper. It had less storage. It was slower You have one to yourself. There's no multitasking. It doesn't need it. There's no multi-user support. You own it Why have multi-user support? So all this technology from the mini computer era thrown away Not adapted not modified not respected if you heard the earlier talk They've lost all the tapes of the early versions of Unix. Nobody thought it was important thrown away They kept a couple of things this ran CPM in later versions which had OS 8 like 8.3 file names and things but Not dilate related to it totally rewritten ground up Then computers got even smaller and even cheaper and you could give them to kids as toys That's a Sinclair spectrum in there That's one of the original rubber key ones But I at about age 13 put it into a much nicer keyboard and I've still got it First home computer in the UK that you could afford to buy just about for under a hundred pounds as a kid I played with things like a common old pet My uncle bought her ZX 81, but I was 12 and it didn't do graphics. It didn't do color. It didn't do sound It was boring, but my spectrum had all of those things. It was great. I loved it I still play with them occasionally if you know any biology this was the time of the Cambrian explosion of Computers There were hundreds of different makes and models a couple of guys involved in the Sinclair ZX 81 went off and set up Jupiter and made the Jupiter ace the only home computer to use fourth instead of basic There were 6502 machines z80 machines 6809 machines vast variety No two-level storage in these either You could dump stuff to tape and that was it People were so fanatically loyal to these machines. They loved them. They Engaged in advocacy that makes Linux distro advocacy look very tame And then another generation of computers came along Apple more or less made the home computer market in the States with a $1,000 computer the Apple to they tried to make a 16-bit successor But it cut into the margins So they disrupted the market with the Apple Lisa ten thousand dollar machine and then they replaced that with the Mac a two and a half thousand dollar machine Soon everybody copied it. Lots of new companies launching 68,000 powered machines with graphical operating systems one weird little company in Britain called acorn Dried a 16-bit successor, which is almost totally forgotten. It's called the acorn communicator It didn't do very well. So they junked it and they came up with an insane plan to write their own operating system for their own Microprocessor, which they designed from scratch The project completely failed and crashed and burned so a couple of guys did a frantic skunkworks replacement, which became this Colorful isn't it? This changed the whole world They sold again millions of these things Nothing came across from the 8-bits. They were not powerful enough to emulate the old computers. So all of those Millions of hours of R&D were totally thrown away. They weren't good enough They couldn't run an emulator fast enough to run the old software. So they just didn't bother They can't read the previous machine's disks. They can't run the previous machine software. Nothing nothing works Start the whole thing from scratch Again You keeping count? I'm not So I said that there was a parallel line of development that started in the 70s It's one that doesn't get talked about much now and I only found out about it in Research for a project which led to this talk in my previous talk The mini computer makers Shrank their machines and made them smaller and cheaper until they went from a row of filing cabinets to one filing cabinet to Huge great box that was the size of a desk to something like a very fat tower PC that sat next to your desk and They invented the single user mini computer or Workstation One of the first was the Sun 1 which fairly typical machine of its time The aim in the early days of the workstation market was a 3m machine a Million bytes of RAM a million instructions per second and a million pixels on screen Laughably low-spec now big deal in This is one of the famous influential ones, of course, this is a Xerox alto That's the small talk programming environment. It ran Apple went and saw a demo of this and totally failed to get the point So they went home and took a machine that ran Xenix the prototype apple Lisa and they adapted it with a sort of frantic Lash-together graphical operating system. It's what pick started the micro computer 16-bit micro evolution This was actually the first popular Object Oriental programming language This software was all live and dynamic and written in the language itself You could edit the code and change windows surroundings frames on the fly. There's no compilers here There's no static binaries. It's one huge mass of live code that you can look at and edit What happened is mini computers merged with one Terminal and became a very expensive but powerful standalone machine They cost as much as a small house So they didn't make much market penetration. They really only sold to Research institutions universities and a few wealthy companies This is the descendant of another famous workstation. This is a symbolic list machine This is a later generation list machine If you look at the window frame in the menu bar, you can see it's running on Mac OS But this is not an emulator. This is a list machine on a new bus card fitted inside a Mac Its memory is totally separate to the Mac's memory Another amazing operating system Symbolics was a hugely important company in its time Symbolics had the first ever comm domain on the internet. They were that big Again the entire environment written in a single language from the apps right down to the bootloader list famously hard to understand but famously powerful and capable The list machines are indirectly responsible for both emacs and the GNU project So you can arguably blame them But most of the mini computer manufacturers persisted with their old operating systems This is a deck vac station for thousand It's running Vax VMS with deck windows on top I've got a couple of these one of them is somewhere in red hats office in Farnborough And if anybody's connected with red hat, I'd really like to find that quite like to have it back, please um Deck did machines with their own Vax processors They also did machines with MIPS processors and later on they invented their own risk chip alpha the first 64-bit risk chip All completely incompatible with each other Two of them running totally different operating systems from unrelated Unix families absolutely normal Cross compatibility was not a thing. Nobody thought about it so you know at the same time as Micros were getting colorful graphics and fancy stereo sound and Rich windowing environments the workstations were having all that stuff, but they also had built-in email built-in internet access All these kind of wonderful facilities in the 80s before the internet before the web Mini computers just sort of quietly faded away But these are the offspring so now coming up to the end of the 80s the Start of the 90s There's still about a half a dozen main families of incompatible computer which Make up most of the market for both home computers and business computers Another revolution is coming another generation switch is coming 32-bit Processors were becoming affordable. They were cheap enough to start to put into home computers They were cheap enough to start to put into ordinary desktop business computers and That's when something happened that had never happened before in the history of computing Something very weird it led to the birth of a new God and In my opinion, it's a dark and malignant trickster God It looked like a helpful friend. It wasn't This is called backwards compatibility the 32-bit chips didn't seem like a very big deal for all the people making gooey powered PC computers Commodore Atari Apple their computers just got a little bit faster got a bit more memory great but the very primitive little operating systems that Today look tiny and felt and elegant They look they weren't they still provoke huge nostalgia in a certain type of middle-aged geek They couldn't be adapted to the new capabilities of the newer chips but The Intel ones were a bit different the Intel 32-bit chip the first one the 386 came out in 1987 but it was fully 32-bit needed a 32-bit memory on a 32-bit motherboard and it was just too expensive for most people It was the later 386 sx with a 16-bit bus and 16-bit memory that made them cheap and affordable To recognize this operating system incidentally This is a very early beta of what became Windows 95 You can see that they really didn't quite have the taskbar idea and so on worked out in the beginning The 386 had a secret feature feature that is now almost forgotten It is no longer present in 64-bit x86 chips a 386 cannot only pretend to be the old early 816 bit 8088 processor it can pretend to be several of them at once This was an absolute killer feature. This meant that once Microsoft adopted Windows To three it adapted Windows to 386 chips The new Windows 3 could run DOS apps in a window multi-task them and actually run them better than on DOS You could copy and paste you could run several of them side-by-side you could run a Spreadsheet because we're talking about PCs Save the figures load them into a graphing program and do a nice chart because most Spreadsheets couldn't do that on the era of DOS This was a huge change and it made them a lot of money and it meant that as 32 bit caught on It allowed the PC to catch up with all of the proprietary Graphical machines it got all those things that only the 68,000 owners had had before They got multitasking. They got a nice graphical interface. They got color and sound and video and All this kind of cool stuff so This was a new era, but it was very hard to adapt IBM Microsoft and Apple struggled massively around this time IBM had a project called OS to some of you might have seen that OS to was very clever. It was a Focused ground-up rewrite and replacement for DOS But IBM targeted the 286 chip which couldn't do the multitasking of DOS apps feature It doomed the OS Apple Apple did an awful lot of flailing around about this time I'll get back to that but Microsoft did something very interesting. They took a long-term view They ran two side-by-side operating system projects One project Took the fairly Shabby 16-bit GUI that they had from the 80s and enhanced it The other project was much more interesting They started with the CPU independent version of OS 2 which was called OS 2 version 3 It ran on Intel's attempt to make a risk chip which was codenamed the N10 So this project was codenamed OS 2 NT It was barely a sketch of an operating system at the time So they went to digital and they poached digital's programming lead and his team Dave Cutler They gave them OS 2 3 and said finish it make it work Well OS 2 N10 became OS 2 NT which became Windows NT and you may not use it, but you all know it It looks like Windows It's nothing like Windows Underneath NT it looks very much like digital VMS Because it's written mostly by the same team The data storage structures the way it handles interrupts and IOQ's and everything are all borrowed very directly from VMS It looks like a descendant of the 80s desktop PC, but actually it's really a descendant of a 1970s mini computer OS Apple well Apple flailed around bless them. They really tried They tried to work with IBM on a totally new object oriented operating system It failed They tried to rewrite their proprietary operating system to deliver true multitasking and so on it failed They did a port of Linux running on top of the mark microkernel to their power PC max It failed pretty much They did a radical pocket computer with the acorn processor in it with an elis based operating system It did make it to market Failed So in the end they gave up and they bought a workstation company and this is what resulted they bought next of course and They went to Unix like all the other workstation makers But the next programmers when Apple bought them put in a virtual machine and in the virtual machine They ran an entire copy of the old Apple operating system To give backwards compatibility The new God you've got to have it if you don't have it Your computer is not worth having so the year 2000 all of the Variety the diversity of the 20th century has gone. It's dead Even Microsoft's weird hybrid 16 stroke 32-bit line is dead It's left to types of computer Both are written in C Both are based on a very mini computer like core design with little walled-off memory partitions with Compiled applications running in them calling operating system facilities by a rigorously defined API Often with visible see-like properties even if you're using a different compiled language The two families are of course Unix and Windows NT and basically everything else has gone Now I rather like this This is from a great little article about one of my favorite obscure operating systems Oberon a family tree of Graphical operating systems. So Doug Engelbart the mother of all demos inspired the guys at Xerox and Xerox had a visitor from the ETH in Zurich Professor Niklaus Viet The inventor of Pascal He saw the small talk system and he went wow, this is cool But they didn't have the budget for such high-end hit So he went back to Zurich and he wrote his own operating system in modular 2 Which he really ought to have called Pascal 2 if he had better marketing skills and he called it the Lilith and then he did another Successful operating system called Oberon Meanwhile the Xerox Park project completely failed to be usefully commercialized never sold But it inspired the leaser which inspired the Mac which inspired Mac OS 10 and all graphical Unix's and It also inspired Windows NT So here we are today we have two operating system families one is descended from a Deco-operating system from the 70s which is descended from a deco operating system in the 60s and the other is inspired by a Third-party deck mini computer operating system from the 60s. How's that for diversity? What happened? Well in the 50s mainframes advanced. They got better and better and better Every time a new generation of mainframes came they added facilities They invented some clever stuff, but They didn't move on Because there comes a point when your project is so big and You can't usefully enhance it. It does everything you can think of and it works Meanwhile over in the micro side of things and the mini computer side of things We kept on getting generations of computers with less storage and less hardware facilities than the previous generation But cheaper and because they were cheaper they sold lots of them and that meant everything had to be rewritten Every 10 or 15 years for the entire history of computing we have thrown the entire thing away and Rewritten it from scratch until about 1993 to 1994 1993 the release of the first version of Windows called NT Windows NT called 3.1 for licensing reasons and 1994 Linux version 1.0 Why Linux? Well, this is scope open server 6 This was mainly sold as a server There's a clue in the name the full function version was one thousand four hundred dollars for a single user license Ain't nobody can afford that on x86 boxes So we just rewrote the whole thing But all of the developments that had happened on the workstations all the developments that had happened in Unix R&D Oberon also inspired the Unix guys to create the success of Unix Which I think should be called Unix 2 but was actually called plan 9 from Bell Labs It's window managers directly inspired by Oberon Its editor is directly inspired by Oberon. It's Unix with true built-in Kubernetes in the kernel basically processors can be mobile processors can move across the network to any battle machine subject to privileges and so Went nowhere What happened? Well, what we had was good enough In the 90s instead of throwing away all the 80s stuff and starting again instead of moving forwards. We moved backwards We went back 25 years We took sophisticated operating systems from 1970s mini computers And we updated them and adapted them to modern hardware And that's where we've stayed since then We've taken some of the nice 80s stuff. We've got nice colorful GUIs on top. We've added touch control to those GUIs This is a Unix computer with two-level store in my pocket. I Bet everybody here has got a unit computer in their pocket. Some of you have probably got several But it was good enough We didn't throw everything away. We didn't burn it down. We just kept going So now you have two choices You can go with 40 years of accumulated baggage from the IBM PC There's Windows one or you can choose Unix and have 50 years of accumulated baggage. Yay That is GNOME one incidentally. Um That's your choice why well because it's good enough we all know it it works well we've fixed most of the bugs now It'll do it does the job There haven't been any big technical shake-ups since those 32-bit PCs these mini computer operating systems could handle 8 bit computers 9 bit Computers 12 bit computers 16 bit computers 18 bit computers and 38 bit computers 64 bit no problem As the previous speaker said Minix Unix was running on multi-core processor computers In the 70s multi-core processors no problem So that's where you This is a cruel example This is 50 years of baggage. We are well half of us anyway are still using Basically the first-ever interactive screen editor. I started using this in 1988. I still hate it with a passion But just in case I tried telling Max and I hate that with a passion as well. So, you know, um I use a I Use a graphical thing called oxygen for my job I hate it too, but um We haven't really moved forward. We now have computers based on 70s workstation technology All of the advances Since the beginning of the 1970s and into the 1980s There was some wonderful stuff out there amazing dynamic programming languages to construct rich internet capable GUIs Lisp small talk They still exist their niche programming languages now operating systems and forget about it There were new radical Unix based operating systems like plan 9 and its successor inferno These are both really worth your time to have a look at Inferno didn't just take the network transparency of plan 9. It gave you Processor transparency as well. It embedded a virtual machine into the kernel, but not like the JVM Which it went up against this was a register based virtual machine It's much easier to optimize all modern processors are register based because you can optimize them The JVM is stack based all the stack based computers have gone away There were C++ operating systems in the 90s I personally used to use scion computers with epoch 32 which became Symbian which powered all the early mobile phone Smartphones gone away. There was BOS The nearly new Apple operating system. They'd be totally dead now if they bought it It's gone away buried inside access ink in Japan There's haiku, which is lovely and I like haiku a lot, but it is not small fast and elegant like BOS was Software went backwards as the hardware went forwards All the major revolutions in computing that have defined the generations have been defined When the hardware got worse not better Every time we have had to adopt a new generation of computers Mini computers then 8-bit micros then all in one 8-bit micros then 16-bit micros Everything was thrown away and destroyed and we started again. It was normal It was just what you did But you started again with new better languages and new better ideas and in about mid 90s that crashed to a halt And we haven't done it since Because the hardware hasn't got worse since the mid 90s We are stuck now with multi gigabyte operating systems with tens of millions of lines of code in dozens of languages that no one human being can understand anymore and We can't substantially improve them anymore because they're so big and so complicated. We just don't really understand them So now we're developing things like container technology, which I document for a living Which understands that they'll fail all the time and detects when they fail and restarts them in a quick and efficient manner software is culture and Our culture has been stultifying for 25 years When 25 years ago it reached back another 25 years We need a new generation of worse computers We need simpler computers we need to take something away I propose Next slide, please. Oh, yeah seminal paper. You should absolutely all read this C is not a low-level language. Your computer is not a fast PDP 11 excellent paper um so We took the radical GUIs of the 80s in their marvellous object oriented dynamic languages And we re-implemented them with statically compiled manually memory managed languages with weak typing and and Yeah, they're shiny and everybody's got distracted by the shiny This might might save us It's a very big if These are a pair of Intel obtain NV dims I Maintain the section in the Suiza Enterprise Linux documentation relating to supporting these devices I got the job because I was the only person who'd heard of an NV dim on the team Probably shouldn't have disclosed that should I This is a big shift if it happens. It's not going to be risk 5 It's not going to be an out-of-the-box mill processor. It's not going to be processors at all It's going to be storage This is kind of like flash memory But it's much much better than flash memory. It's orders of magnitude faster. It can be rewritten orders of magnitude more times It's also Substantially cheaper than RAM You can buy it as a very high-speed PCIe SSD, but you can also buy it as a dim and stick it straight into the dim sockets on your server motherboard It's not like an SSD. It's not pretending to be a disk drive. It's memory Right in the processor's memory map Except whatever you write there just stays there you can pull the plug When you put the plug back in the contents of memory are exactly as they were Now it's true. This has a finite lifespan It's many millions of rewrites in the current early versions and there are multiple companies working on non-volatile memory If you ran one little loop counting to a million in a block of this RAM It would burn out the RAM so probably you're going to have some ordinary RAM in there as well But you can partition the workspace you can have a computer based on this You don't need disk drives anymore And if you don't need disk drives, you don't need disk controllers If you don't need disk controllers, you don't need the whole concept of a file system Which is a way of finding blocks of secondary storage Finding the right one and loading it into RAM That is now an obsolete concept We go back to the 40s with machines with magnetic non-volatile memory The whole distinction between primary and secondary storage can just go away You don't boot the operating system You turn off the computer when you turn it back on it's still there in memory Just picks up where it left off. You don't install an operating system You boot the thing off the network when it's new and there's the operating system in memory And it just stays there until you upgrade it Why bother with disk files? There's no files anymore You don't need files. Everything's just a block of memory You just need some system. Every operating system there has ever been Have systems for managing and allocating their memory and deciding what's in where and keeping track of it This is not new technology. This is old technology But this is simpler This stuff is way cheaper than RAM But the moment it's more expensive than flash, but I think in a few years it's going to replace flash And then the whole idea of the SSD goes away This will be Simpler and because it's simpler it'll be cheaper And every major generation of worse computers has been driven by the fact that they're cheaper Because that's all the manufacturers really care about is not clever software. It's how much profit margin there is My iPhone is three years old now. I bought it secondhand and Batteries second battery is nearly dead now I'm probably going to replace it with another to keep Chinese Android phone because I can get a much better one for a hundred pounds Cheaper is what drives everything. I Think we don't need better computers. We don't need more processor cores. We don't need better GPUs I mean, we're going to get them anyway You know what we need? We need worse computers We need an inferior generation of simpler machines That lack major facilities that we take for granted these days that make us tear everything down set fire to it and start again It sounds ridiculous because you've all been worshiping the God of backwards compatibility for 25 years But actually that's done a massive amount of harm to the whole world of computing It's time to start over It's time to burn the whole thing down Reboot it And that's it. Thank you very much Thank you. Yeah, I'm proven for this talk. I think it was very fascinating over all this history We have time for one question. So please keep seated if there is one question and Wait for it. We are just nearly done. Is there a question if you have a question. Just wait for me or I Don't see a question. There's some contact details if you To tell me I'm completely wrong after Hi Liam question Given that we have 40 years or 50 years I'm doing my best Where on earth do you think the the operating system iconoclasm is going to come from? to actually make use Rather than reinventing another wheel in software with this new hardware So the question was where will this operating system iconoclasm come from? I think the open-source community is ideally positioned to do this because it's going to be risky Which is something business is a very averse to Every important new generation of computer when it came out was a toy It wasn't serious. It wasn't something you did big serious work with It was a toy that you played around with and you know what MS DOS was a toy when it was launched CPM was a toy Linux was a toy and I quote. I think it won't be big and serious like GNU We should start playing around those of us who Don't need to risk our company budget on it and start playing around There were open source versions of small talking list which are ideal for this. There's Oberon out there It's open source. There's plan 9. There's materials to draw on But start again re-implement it play around come up with toys who has the most cool new toy to program with Next question. Yeah, I think that's a good Good and for this talk and a good motivation to do something so thank you again for the talk for everybody else