The third installment of Ars’ series on the history of the Amiga begins with the third prototype and covers the rest of Amiga’s history as an independent company. “Modern chips are designed using high-powered workstations that run very expensive chip simulation software. However, the fledgling Amiga company could not afford such luxuries. It would instead build, by hand, giant replicas of the silicon circuitry on honeycomb-like plastic sheets known as breadboards.”
The article seems to be rushing a little now. Chip design, the API, multitasking, the GUI, the work culture… each could be several pages by themselves. And so much about the Amiga’s development were just the right things happening at just the right time…
I just noticed something: the screenshot of early Workbench looked a lot like GEOS. I wonder if one inspired the other, or if the similarities were just due to shared workers?
I used both and don’t quite see that similarity. But you have to keep in mind that all of them very likely where inspired by Xerox GUI.
it could also be due to the relationship of the early Amiga company with Atari, which did end up using GEOS in their Atari home computers. Who knows?
If you are talking about the Atari ST, they used GEM. I wouldn’t even call GEM, GEOS, or the Amiga Workbench terribly similar looking (though they do differ from modern GUIs more than they differ between each other).
I cringed at the description of the breadboarded Amiga, though I think that may have come from the sources that the author was using. The Amiga engineers said that they breadboarded the thing in some Amiga history videos (see Amiga Forever), then described the boards as being wire wrapped. Pictures of the boards look like wire wrap too. Perhaps breadboarding is just engineering lingo for a certain class of prototypes. The problem is that the author described breadboarding on those solderless and socketed boards that don’t allow for wire wrap (which, incidentally, is what I think of as breadboarding — but I’m not deeply into electronics so my impression could be wrong).
EDIT: removed extraneous text :p
Edited 2007-08-22 21:01
The Amiga engineers said that they breadboarded the thing in some Amiga history videos …, then described the boards as being wire wrapped. … The problem is that the author described breadboarding on those solderless and socketed boards that don’t allow for wire wrap …
There’s no conflict here. I worked with wirewrap prototype boards in the 80’s. We would buy a blank board (from a company named Augat) that had DIP sockets on one side and pins extending out the other. They were either wired laboriously by hand or much faster with the monster wirewrap machine.
The word prototype is simply anything that isn’t production. Today it’s actually cheaper to produce a printed circuit board for a prototype (and of course DIP packages are few and far between).
Although Sassenrath may have thought up microkernels independently, I’m quite sure that microkernels already existed. QNX comes to mind.
The first microkernel was invented by a Dane in the 1970’es.
As I’m not registered in Ars I’m replying to someone nicked “Andy Patterson” writing this as comment:
Wrong dude, hopefully you read this and:
1. DL WinUAE install it and..
2. DL AsmOne and install it under WinUAE
3. Write this line 68k asm code to see with your own eyes O_O
[ 68000 ASM CODE ]
NotPreempted_YeahRight:
bra NotPreempted_YeahRight
[ /68000 ASM CODE ]
4. Assemble it, save it in RAM: as ReallyPreemptedHolyCrap
5. Exit Asm-One, open a shell/CLI and type “Run RAM:ReallyPreemptedHolyCrap
6. Continue your workbench session (!), and open some progs as a further proof.
Really Preempted Holy Crap (crap being that prog offcourse hehe) ._. O_O
Edited 2007-08-22 20:57
Not only did he get the AmigaOS preemption wrong, but call Windows 3.x what you want, it did do true preemptive multitasking between DOS boxes. Read the Knowledge Base article at: http://support.microsoft.com/kb/11248
So if you wanted true preemptive multitasking on an x86 machine with an MS OS that ran DOS applications, that’s the best way before NT or 95 came out to achieve that. Sure, it was primitive by comparison to today’s systems, but… it worked.
But it wasn’t preemptive between different Win16 Applications, only different MS DOS Apps (which, if my aging brain doesn’t play tricks on me, didn’t work all that perfect as well). Amiga already was fully preemptive, GUI and non-GUI Apps.
IIRC one could even assign different priorities to different tasks (or at least processes) from the command line, and the scheduler would respect that.
Yes it does, and if I’m not mistaken there _is_ a way to stop the scheduler from scheduling out the task in question for the sake of some other task. The task in question only needs to do SetTaskPri( taskPtr, 128 ), do a busy loop and it wont be scheduled out while it continues busy looping _and_ there are no other task with priority 128 (am I right?), however it _will_ preempt even that task, but as it uses its full time slice and there are no tasks with the same (or higher) priority it will schedule it in again and so on.. (am I right again ?)
Edited 2007-08-23 09:10
Yes, you’re right. That was the disadvantage of the plain RoundRobin scheduler used in AmigaOS (it was fixed later by an application called executive, which you may still find on aminet ). There were also simplier ways to bring scheduler down, but it doesn’t matter here, since all this actions were not done by default. The AmigaOS was an operating system with preemptive multitasking.
BTW, would any of you dare to say that linux is not have a true preemptive multitasking? A process started with root UID may change the scheduler to the SCHED_RR (RoundRobin, the same used in AmigaOS) and set it priority high enough to block everything. According to man page (sched_setscheduler(2)):
Outch… This sounds exactly like idea of blocking multitasking on AmigaOS, doesn’t it?
Edited 2007-08-23 15:12
Yes you’re right yourself I suppose, I suppose because I havent looked into almost any parts of linux.
I’ll never use any GNU/Linux distro as my primary desktop OS (I dont even _use_ it) unless radical changes in – mostly – userland come along (it’s so radical it probably never happen), Nevertheless the security in that OS foundation is something I really love (same is _supposedly_ true for windows 2000+, but the braindead design of application installation which destroys the whole purpose of the multi-user foundation of it makes it look like something a standup commedian could pull out, am I right or is there some “magic” going on that I’m not aware of).
Offcourse no ordinary app should execute as root anyway (again most windows self installer apps _need_ to – as a user with rwx privileges to the C:WINDOWS and blelow directories, thats an admin account, thats practically root – , strange).
A process started with root UID may change the scheduler to the SCHED_RR and set it priority high enough to block everything.
How complicated =)
In WinNT/2K, basic “jmp $” running on normal priority will block the whole OS.
Hi,
i’ve always been told that Metacomco wrote the AmigaDos and that commodore bought the right (and later the society). Can someone tell me if the amigaDos was just the part of the OS which dealt with IO or just a common name ?
Thanks,
Djamé
I know one of the founders of the company. Basically MetaComCo was a company founded to commercialise some of the research products that came from the TripOS project in Cambridge.
They had a generic OS based on TripOS, which was a germinal work on what later developed into what we now know as microkernels (it wasn’t a true ukernel though). And a lot of the programming tools and languages (Fortran, Pascal, etc). The whole environment ran on the 68K processor.
They went shopping for customers, and the first company they hit was actually apple. They were not interested, and hi-toro, nee Commodore bought their development OS platform.
So the AmigaOS comes from the commercialised TripOS. The GUI and stuff are later additions as far as I was told.
But their intended target for MetaComCo was Apple, with Commodore being a sort of safety out of the left field business deal. To think that Apple could have had a product based on the TripOS techonolgy with the Mac GUI.
Alas… history ended up being quite different.
Thanks for the answer, how come this arfticle doesn’t talk about Metacomco on the part devoted to the OS ?
Lame article.
Hah! There’s no chance you could do that today. At “airport security” the TSA would tear the whole thing apart right there on the luggage belt and then not even give you any time to reassemble it.
Yes that’s right. The Amiga could never happen again thanks to the War on Terror! It might be a conspiracy by Microsoft or even Torvalds himself.
Mr. jjmckay wrote:
[quote]
[/quote]
If Amiga was born after 9/11, then people at Amiga Inc. should had used cars to travel to Computer Show instead than airplane, and maybe they had missed their chance…
If Linux was born in the ’70 it has been considered an Operating System for Communists, and was was prohibited by law…
If Bill Gates had had not his mother employed into IBM who had suggested the management his son was capable to build an Operating System for 8088 PC IBM, then we all had get rid of MS-DOS and then Windows…
History is full of “IF” critical situations…
You’re semi right. Metacomco wrote TripOS, which shares a lot of code with AmigaDOS. Incidentally, Commodore bought them in 1984, before the Amiga was released, so in a round about way, you’re right and you’re wrong. The people from Metacomco did write AmigaDOS, but at the time they wrote it, they were Commodore employees.
Mr. Djame wrote:
[quote]
[/quote]
[quote]
[/quote]
Yes, AmigaDOS came from TripOS…
BUT
AmigaDOS it is NOT AmigaOS…
AmigaDOS it is just only one single MODULE of entire AmigaOS.
ADOS is the module of AmigaOS dealing with DOS commands in text based GUI like CLI and SHELL that were keyboard driven, and it controls that peripherals were formatted well and have a filesystem on it.