Slashdot Mirror


What Was The First Computer Operating System?

somethinsfishy asks: "A shell and a kernel is a fine description of a 'primitive' OS, but back in the days of vacuum tubes and mercury delay lines, a programmer had to be intimately familiar with the hardware. No source I've seen in print or on-line definitely says 'x' is the first OS. I've looked. This seems like it could be a grey area. Any thoughts?"

21 of 247 comments (clear)

  1. That's not where ENIAC stole from by hawk · · Score: 3

    ENIAC ripped off many of its innovations from the ABC, the Atanasff Berry Computer at Iowa State. The page for the machine is currently down, but a pair of replicas were recently built. You can find an article at http://www.alumni.iastate.edu/events/abcreplica.ht m. If you search for "Atanasoff Berry Computer" at the http://www.iastate.edu homepage, you'll find plenty of information.

    In a nutsheell, Atanasoff and hs graduate student Berry built the machine in the thirties to solve 17 simultaneous equations in 17 variables. ISU claims it as the first electronic digital computer. It used vacuum tube logic (small interchangable sub-chassis with a handfull of tubes), was apparently the first to use base 2 rather than 10, the first to have regenerative memory (rotating drums of capacitors), and something else important that I forget :)

    Atanasoff was called off to the Manhattan project, and the machine was taken apart for parts.

    The machine came to light during litigation over ENIAC's patents. Not only was the ABC prior art, but it's builders went to ISU and were shown the details of the ABC--which they then used and patented.

    WHen the replica project started, they found no schematics for large portions, and had to use photographs. Finding parts wasn't as bad as might be suspected, though--when they dug out ancient purchase orders to find out what parts were used, it turned out that some of the same warehouses still stocked the same parts--including the weird paper that they used for output by electrically charring it, iirc .

    Two replicas were built, one to reside permanently at the Smithsonian, and the other to tour. One (I'm not sure which) was actually fired up to solve a problem--once.

    hawk

  2. Lisa wasn't derived from PARC by hawk · · Score: 3

    Look at the history at http://home.san.rr.com/deans/lisagui.html

    It includes screen mockups from *before* the PARC vist. PARC certainly influencd the Lisa, but it wasn't the origin.

    hawk

  3. IBM/360? by ptomblin · · Score: 3

    I'm pretty sure the IBM/360 was the first system to use a layer of abstraction to separate the programmers from the hardware, so that they could write programs that would run on a wide variety of computers. One result of that was that you had a few operating systems that ran on these machines.
    --

    --
    The next Cmdr Taco duplicate will be ready soon, but subscribers can beat the rush and see it early!
  4. DOS-MFT-MVT-SVS-MVS-...-OS/390 by wayne · · Score: 3
    If I recall correctly, the order that the operating systems that were created for the IBM 360/370/390 were as follows:

    DOS -- This was a quick and dirty operating system that was created only because the "real" operating system was way behind schedule and they need something for their new hardware. It was expected to disappear soon after OS/MFT was released, but survived at least into the 80's, 20 years longer than expected. Even in the 80's, you had to figure out where to place your files by hand, by specifying the cylinder/track/block address and length in your job specification. The IBM "DOS" was much more primative than the MS "DOS" available at the same time.

    MFT - Multiple Fixed Tasks. This was a multi-tasking operating system, although each program was assigned a block of memory that was a fixed size. No virtual memory, but it had most everything else that people think of an OS having.

    MVT - Multiple Virtual Tasks. This allowed each program to use up variable amounts of memory, although they got a default region of a certain sized based on the "class" of the job that was submitted. If a program need more memory, but there was already a program running at the end of the current programs region, the first program would have to wait until the other program finished before it would continue.

    SVS -- Single Virtual System. Virtual Memory was introduced in this release. All virtual memory was created in a single large address space (16MB virtual on a 1-4MB of physical), and then an MVT type operating system was run in that virtual memory. The advantage was that the initial default memory regions could be "huge", so the chances of a program running out of space was greatly reduced.

    MVS -- Multiple Virtual System. Each program was allocated its own address space.

    Many of the systems writen for these early (pre-1980) mainframes were incredibly efficient. At the University of Nebraska, we had one of the earliest timeshare systems created called the "Nebraska University Remote Operating System" or NUROS. In 256KB of program storage, it supported around 240 users, each was able to edit files, submit jobs, view the output of the jobs, create/delete files, etc. Yes, that's right, about 1KB of memory per person. Well, sort of, as the 2260 and 3270 terminals contained another 2KB of memory that people edit most of their actual editing on. (24 lines by 80 characters = 1960 bytes)

    Oh, it was a state of the art system ca 1970 when it was created, but there is a reason why Unix survived and it didn't. :->

    --
    SPF support for most open source mail servers can be found at libspf2.
  5. Well in a few years time... by linuxci · · Score: 3

    In a few year time the average member of the public will be convinced that Windows was the first OS, DOS didn't exist and Microsoft invented the Internet in association with Al Gore.

    I've seen a serious answer to the question somewhere but can't remember what it was. I'll have a dig about and if I find something I'll let you know :)

  6. Re:Not an easy one, this by Detritus · · Score: 3
    Can't recall ever meeting an interpreter for Fortran. Were there such beasties ?

    I'm not sure if you could call it a true interpreter, but WATFOR (Waterloo FORTRAN) was a "load-and-go" FORTRAN compiler that compiled directly into core from the user's source code. A history of Waterloo FORTRAN can be read here. From the user's point of view, it behaved like a FORTRAN interpreter.

    In later years, I used DEC FORTRAN on RT-11. This compiled into threaded code with a large run-time package. I'm not sure how to classify it.

    --
    Mea navis aericumbens anguillis abundat
  7. Probably CTSS by hey! · · Score: 3

    The Compatible Time Sharing System (CTSS) would qualify as the earliest thing I can think of that we'd recognize as a modern OS.

    There probably is not a sharp dividing line between simple batch job management systems and a real operating system, but CTSS managed multiple processes by giving them timeslices so each process (user)would think it had its own computer -- in other words it abstracted the underlying computer and the fact that multiple processes were accessing the hardware.

    There's an interesting parallel to programming languages. Algol was clean and elegant and lead to the recherche PL/1. C, in part, was designed by negating the basic premise of PL/1 -- that a language should be rich in features. Instead of cosseting the programmer with a huge array of facilities, C seeks to get out of the programmer's way by providing just the essentials.

    Likewise CTSS was a great technical success and directly lead to the brilliant but overblown Multics. And of course, Multics begat Unix, or at least strongly influenced its designers to avoid what we would now call "bloat".

    I think there's a kind of object lesson here which applies to some of the news we've discussing recently. Back in the day, computers were godawful expensive. This means there were unthinkable quantities of resources thrown into Multics, which while it pioneered many important concepts we now take for granted, was almost undoubtedly too big and complex. It certainly can't be considered a totally unqualified success -- for one thing its complexity required special hardware support which ruled out porting to other hardware. Unix again was developed originally on a shoestring which dictated a minimalist approach which fostered greater flexibility.

    So -- resources are nice to have, if you have the acuity to use them wisely. But in the end simplicity and adaptability count for more.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  8. Re:Th Annals of the History of Computing by edp · · Score: 3

    It was Maurice Wilkes, 1949:

    • As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs.

  9. found them by m9 · · Score: 3

    http://www.abandonkeep.com/

  10. OS/360, Try it for yourself! by knarf · · Score: 4
    Well, it might not be the very first OS, but is is (one of) the first which provides hardware abstraction, compatibility and scalabiity: IBM OS/360. And now you can try it for yourself:
    • The Hercules System/370 and ESA/390 Emulator
      Hercules is a System/370 and ESA/390 emulator which can IPL and execute S/370 and ESA/390 instructions. It can also emulate CKD and FBA DASD, printer, card reader, tape, channel-to-channel adapter, and local non-SNA 3270 devices

    So, for some REAL nostalgia, install this on your box, get OS/360 (freeware!), and before you know it you'll be running TSO with 5 users, each pecking away at their 3270 block-mode terminals. Oh, and it can also run Linux/390, so if you've got way too much time on your hand you can run Linux->Hercules->Linux/390->Hercules->OS/360 or something horrible like that.

    --
    --frank[at]unternet.org
  11. According to UC Berkeley by malahoo · · Score: 4

    The 4th floor of Soda Hall, UCB's CS building, has mounted on the wall what I think constitutes my Alma Mater's answer to this question: a giant abacus with a sign that reads, "In case of System failure, shake to reboot."

    --


    If you're not wasted, the day is.
  12. BabbageOS ? by mirko · · Score: 4
    I am not surprise to read about this subject shortly after we spoke about this one, anyway, we have to look towards the first computers to check what guided their data streams and when it could decently be called an operating system.
    In operating system, there is the world system and, IMHO, a system is supposed to be extendable.
    Now here is my first attempt to answer your question :
    From this site: Babbage's greatest achievement was his detailed plans for Calculating Engines, both the table-making Difference Engines and the far more ambitious Analytical Engines, which were flexible and powerful, punched-card controlled general purpose calculaters, embodying many features which later reappeared in the modern stored program computer. These features included: punched card control; separate store and mill; a set of internal registers (the table axes); fast multiplier/divider; a range of peripherals; even array processing.
    Sounds like we got it.
    Now, we could reformulate your question one of the following ways:
    • By assuming you expected one that would be stored distinct from the main processing unit:
      "What was the First Computer software Operating System ?"
    • By assuming you expected one that would be publicly available:
      "What was the First Computer commercial Operating System ?"
    • By assuming you expected one that would fit both previous conditions:
      "What was the First Computer software commercial Operating System ?"
    Finally, I can't wait to imagine now somebody that might ask in some years about the first microprocessor ever, because as our vision of a microprocessor will have evolved (compare Transmeta's thing -or its equivalent, in ten years from now- to the i4004) thus making this question even more difficult to answer. :-)
    --
    --
    Trolling using another account since 2005.
  13. Finally........a definition of "operating system" by w00ly_mammoth · · Score: 4

    never had anything that resembled a monitor, let alone an OS.

    I'm tired of all of you guys whining about what is or is not an OS. To settle this issue once and for all, I hereby present to you the final definition of an Operating System from a company that knows this shit.

    ----------------------------------------------
    MR. FARBER'S DEFINITION OF AN OPERATING SYSTEM ACTUALLY SUPPORTS THE HARD WORK AND INNOVATION BY THE SOFTWARE INDUSTRY OVER THE PAST 20 YEARS.

    Mr. Farber ignores the realities of the marketplace when he tries to define an operating system as "software that controls the execution of programs on computers and may provide low-level ser-vices such as resource allocation, scheduling and input-output control in a form which is suffi-ciently simple and general so that these services are broadly useful to software developers."

    In fact, at his deposition, Mr. Farber was unable to name a single commercially available operating sys-tem that fits his extremely narrow definition. Perhaps his definition made sense 25 years ago, but his testimony essentially ignores everything that has occurred in the field of operating system design over the past two decades. The Apple MacOS and Microsoft Windows and Sun Solaris all fall outside Mr. Farber's definition of an operating system, so it's hard to see what relevance his definition has in this case.

    What Mr. Farber refuses to recognize is that the ongoing evolution of operating systems has delivered to consumers more powerful and full-featured products that are much easier to use. Such enhancements are often made possible by integrating new features and functionality into an operating system, making it a more capable platform for software developers and a giving it a better user interface for users. All types of Microsoft customers-including hardware manufac-turers, software devel-opers, content developers and users-have come to rely on the fact that Windows is a stable and consistent platform that will run large numbers of applications.

    The popularity of Windows is strong evi-dence that nobody wants the sort of rudimentary operating systems Mr. Farber apparently prefers. Microsoft is very good listening to its customers and providing them with technology solutions that meet their needs. Mr. Farber might have preferred that Microsoft create a hobbled version of Windows that had only a small fraction of the useful features contained in Windows 98, but his opinion is not supported by Microsoft's millions of customers worldwide.
    ----------------------------------------------

    Well, that has cleared everything. Now that everyone knows what an operating system is, go back and continue your discussion. :P

    w/m

  14. Of course it's not! by abe+ferlman · · Score: 4
    No source I've seen in print or on-line definitavely says "x" is the first OS.

    Of course not - "x" is just a windowing system!

    Sausage King of Chicago

    --
    microsoftword.mp3 - it doesn't care that they're not words...
  15. Re:The earliest OS I know of is Unix. by rayw · · Score: 5

    Certainly Unix WASN'T the FIRST OS. It came along later than IBMs 709/7090 and OS/360 systems but who could afford the 709/7090. Even Honeywell had an operating system before Unix came along.

    So the question could well be, who had the first affordable operating system? Then Unix would qualify because AT&T was giving it away to the academic community. Sorta like a popular OS is today. I WONDER where these youngsters got the idea from?

    When I started working in Toronto in 1967 for Honeywell Information Systems (HIS), the main storage medium was punched card, paper tape or magnetic tape. Honeywell's innovation in the field was a pnuematically operated tape drive that handled tape with kid gloves compared to the pinch rollers used in all other tape drives of the day.

    Honeywell salesmen at computer shows would take their prospects over to the IBM display, ask the IBM rep to run the tape to the end of the reel, ask them to hit "rewind", then in the middle ask the IBM rep to hit the power OFF switch, simulating a power failure situation. A rookie rep would do it, but JUST once. It initiated a procedure that came to be known as "pull and stretch tape". The two sets of pinch rollers would BOTH clamp down on the tape, pulling in opposite directions and you effectively had to discard the tape and go get the backup and hope you didn't have a power failure until you'd recreated the one you just destroyed.

    Then they'd go back to the Honeywell display, repeat the process and all that would happen is the compressors used to create the vacuum and pressure to move the tape would power DOWN and the tape was left fluttering in the tape loop chambers.

    All companies used much the same technology to move the tape reels themselves. It was how the tape was moved past the magnetic read/write heads that was Honeywells ace in the hole. Once the Honeywell patents expired in the 1970-80s, the enire industry moved to the pnuematic system.

    Certainly the Honeywell units were noisier because the compressors they used were large, loud units. The tape safety factor made it a no brainer, though.

    One company, Gulf Canada, had a magnetic drum but I don't recall that they used any kind of operating system. Many of the other hundred or so users were even largely card based. Try doing an OS with punched cards? Or paper tape?

    You booted up the system with a control panel (keyboard input came along a couple of years later; keyboard input was done at an IBM keypunch machine) and ran a compiler program to create a user written program, then you ran the user written programs.

    No resident BASIC compiler like the VIC-20 had later, which sort of looked like an operating system.

    Us techies would punch code into the control panel just as easily as I now do here at the keyboard. Even could program code to punch on cards and BOOT from the card reader!!!

    Once you'd written a bunch of programs, the operators would "batch" them together and usually reading in punch cards, run them until the programmers needed to compile another program.

    A couple of years later, 1969/70, Honeywell introduced the OS/200 operating system for the Series 200 computers they'd been selling since before 1967 to replace IBM 1401s and that was followed a couple of years later by OS/2000.

    Then Honeywell bought the GE computing division and inherited a REAL operating system: Multics, developed jointly by MIT, GE and until they pulled out, Bell Labs. Of course, that team went on to create Unix, based on some of the ideas that were developed for Multics.

    Of course the widely used OS for the GE machines was GECOS, or GE comprehensive operating system, which Honeywell changed to GCOS, I believe leaving the meaning of the "G" as general.

    That's by brief account of the HIS progression towards an operating system.

    Cheers,

    Ray
    Toronto, Ontario

  16. IBM (moot point anyway) by Noryungi · · Score: 5

    Well...

    My dad used to tell me how he (and a few of his friends) actually created a simple Disk Management system on an IBM mainframe. I can't remember which Big Blue machine they used, but programming was done with punch cards.

    That was the time when, if you wanted your program to actually write something to the disk, you had to create your own routines to do this! Remember also that this was with "magnetic drums" -- to write any data to disk you had to know the hardware and the controller very well to optimize writing and reading (transfer rate were, of course abysmal).

    So they just went ahead and created a clever little program to write and read data to these huge magnetic drums. From then on, all their progrmas would just call the disk management software instead of having to re-invent the wheel. Then they optimized it some more (32KB of RAM was huge in those times!) and simply used it all the time.

    Soon after this, they received the visit of their in-house IBM engineer. Yes, in those days, they actually had an IBM engineer working full-time on the client site. Proudly, they showed him this clever little software. The guy asked for the source code, which they supplied, open source-like. The blue-suited engineer thanked them and walked away with the source. My dad and his colleagues just went back to work.

    Next thing you know, IBM released, with its next-generation mainframe, a complete set of system utilities including a disk manager that looked suspiciously like the one they had created.

    Why am I remembering this? Because my dad said many times that IBM (and, certainly, other computer makers) had used their ideas, as well as the ideas of many others, to create these "system utilities". He was not bitter or anything, he just mentioned that many other users probably had their own utilities for printing, batch execution, disk management, and others, and that IBM simply had used the best ones they could find... No one "invented" an "operating system": they just used more and more utilities and integrated them with one another.

    Ah well. Just my US$ 0.02...

    --
    The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
  17. Not an easy one, this by Vanders · · Score: 5

    This is difinatly a difficult question to pin down. What are you going to define as "an OS"? If you mean Kernel & Shell, with a set of standard device drivers, then i should imagine that something such as OS/390 & JCL would be one of the first (Though there may be earlier still).

    How about the first FORTRAN interpreters for mainframes? These were originally bootstraped in front of the FORTRTAN data, and in effect, created an abstraction layer between the program and the hardware. I doubt you could say FORTRAN is an OS under the "modern" difinition though.

    There has to be an earlier example of a "modern" OS than OS/390 though. I can't imagine the idea was thought up by IBM before it was done in the lab.

  18. Re:Screenshots by uhlmann · · Score: 5

    whoring for karma... ;-)
    here are some screenshots of win 1.0

  19. Just find the first computer.... by DrWiggy · · Score: 5

    Well, seeing as everybody is having problems defining the first OS, perhaps we should look at the first stored-program computer and see what that was running. The first "programmable logic calculator" and there were 10 of them in operation at Bletchley Park during WWII working on breaking the German Enigma cipher.

    The "OS" on Colussus as I understand it, was simply the function of a group of valves. There was hardware checking other hardware, but to my knowledge there was no software running on Colussus other than the algorithm used to break Enigma. Input was by way of punched paper tape containing cipher read a few thousand characters a second (I've seen the rebuild running, and yes it is scary watching paper tape at that speed), output was buffered onto relays which meant a typewrite was printing out onto paper roll. The "processor" was just 5 characters of 5 bits held in a shit register. I suspect the "OS" was hardware and people making sure that none of the 2,500 valves blew up. All programming was by way of hard wiring, so it's hard to determine what the OS was here. There is some really cool information about Colussus here if you're interested.

    Next there was ENIAC, which due to the fact the British Government kept Colussus an Official Secret, was considered for a long time to be the first ever computer. ENIAC seemed suprisingly similar (when I read the specs anyway) in terms of internal function to Colussus - no OS there at all. So, we still haven't found anything...

    Then there was the Baby built by Manchester University in the UK. The rebuild of the Baby now sits in the Manhester Science and Industry museum. It's a curious piece of kit to say the least. It's memory consisted of a radar screen showing an array of bits, and whether each bit was on or not was picked up by a piece of gauze in front od the screen. Because phosphor on the screen takes a while to fade, you could just fire it, and not worry for a few hundred milliseconds about refreshing it.

    The baby didn't require anything to hard wired at all. There was a group of toggle switches on the front to program the machine, and there was a sense of "state" when no program was loaded or running. Therefore, I think whatever it was running on the Baby probably has claim to being the first ever OS. There is some nice stuff on the Baby (or officially the Manchester Mark 1) over here for you to peruse at your pleasure.

    So, my vote is that whatever was running on the Baby was the first OS. But then, I don't know as much about ENIAC as I do about Colussus and the Mark 1. Please feel free to correct me if the ENIAC had code running before a program was loaded.

  20. Th Annals of the History of Computing by gwernol · · Score: 5

    According this this abstract of a paper in the IEEE Annals of the History of Computing, EDVAC had a recognizable operating system in 1952/53. I suspect this would qualify as the first OS...

    --
    Sailing over the event horizon
  21. Before 1950s by w00ly_mammoth · · Score: 5

    Ultimately, this is a controversial topic. Perhaps the strongest contender would be Konrad Zuse , who developed a programmable computer in the 1940s. Interesting first person notes from an inventor in Nazi germany.

    In the ACM archives , there is a paper on "Monitors, an operating system structuring concept" by C.A.R Hoare. Since this is from 1974, I guess it's not too old, but still an interesting paper.

    Many have been posting about OS/360 (or 390) but while MVS was a major step in OS history, it wasn't the first. It was released in 1964, too late for the first OS.

    Also interesting is a time article on the first computer

    All the old stuff is fun to read.

    w/m