Contemplating the 80186 (Was: Open questions in OS design)

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: Open questions in OS design?

Post by Troy Martin »

berkus wrote:Wow, are you guys really coding for the 80186??! Wow!
I am, I feel like coding for a minimal configuration is a good, fun challenge.

EDIT: and pulling a UD2 is fun :P
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: Open questions in OS design?

Post by Troy Martin »

It's one of those strange gifts. The most important part of it was POPA and PUSHA.
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
cyr1x
Member
Member
Posts: 207
Joined: Tue Aug 21, 2007 1:41 am
Location: Germany

Re: Open questions in OS design?

Post by cyr1x »

Troy Martin wrote:The most important part of it was POPA and PUSHA.
Which can be simply simulated on a 8086 and its even faster to do so. :roll:
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Open questions in OS design?

Post by jal »

berkus wrote:Nice, I've never seen a 80186 in real life. 8086 and 80286 yes, but never a 80186 :(
The 80186 was used mostly in embedded systems, as it includes a PIC, PIT etc. on-dye. I've seen them used in ECRs, for example (the TEC FT-77, to be precise).


JAL
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Open questions in OS design?

Post by jal »

cyr1x wrote:
Troy Martin wrote:The most important part of it was POPA and PUSHA.
Which can be simply simulated on a 8086 and its even faster to do so. :roll:
No it's not. In raw clock cycles yes, but don't forget instruction fetching.


JAL
User avatar
Colonel Kernel
Member
Member
Posts: 1437
Joined: Tue Oct 17, 2006 6:06 pm
Location: Vancouver, BC, Canada
Contact:

Re: Open questions in OS design?

Post by Colonel Kernel »

How did a discussion about the frontiers of OS design & theory become a discussion about a nearly 30-year-old CPU? :lol:
Top three reasons why my OS project died:
  1. Too much overtime at work
  2. Got married
  3. My brain got stuck in an infinite loop while trying to design the memory manager
Don't let this happen to you!
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Open questions in OS design?

Post by Combuster »

No future without a past, I guess :wink:
Topic split, go bump it if you want.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by Troy Martin »

The 186 is only 25-ish years old, was first produced in 1982. Still, it's fun to program for it!
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by jal »

Troy Martin wrote:The 186 is only 25-ish years old, was first produced in 1982. Still, it's fun to program for it!
Do you actually own one (or several)? What type of hardware is it? Ordinary PC-clone?


JAL
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by Troy Martin »

I don't own a box with one (they weren't widely known, as you can see here) mostly because they were for the embedded market IIRC.
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by jal »

Troy Martin wrote:I don't own a box with one (they weren't widely known, as you can see here) mostly because they were for the embedded market IIRC.
So how do you test? Or do you just use modern hardware?


JAL
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by Troy Martin »

I just use modern hardware but I like restricting it so that someone with a box from 1984 can use my OS.

Edit: Alex, how did you get that font for your graphics mode?
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by jal »

Troy Martin wrote:I just use modern hardware but I like restricting it so that someone with a box from 1984 can use my OS.
But they can't, can they? Noone had a 186, so you effectively target 286 boxes. Which were available/affordale from 87/88. Why not target the 8086/88? Then I'd at least be able to run it on my XT :). Also, the hardware from that era is quite different from the current, no IDE etc. I'm even not sure whether INT 13 was available for those old MFM harddisks (ST-157A FTW :)).


JAL
User avatar
abachler
Member
Member
Posts: 33
Joined: Thu Jan 15, 2009 2:21 pm

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by abachler »

jal wrote:
Troy Martin wrote:I just use modern hardware but I like restricting it so that someone with a box from 1984 can use my OS.
But they can't, can they? Noone had a 186, so you effectively target 286 boxes. Which were available/affordale from 87/88. Why not target the 8086/88? Then I'd at least be able to run it on my XT :). Also, the hardware from that era is quite different from the current, no IDE etc. I'm even not sure whether INT 13 was available for those old MFM harddisks (ST-157A FTW :)).


JAL
According to Ralph Brown's 'PC Interrupts' INT 13 and most of its sub functions are available for 'All Machines'.
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Contemplating the 80186 (Was: Open questions in OS design)

Post by jal »

abachler wrote:According to Ralph Brown's 'PC Interrupts' INT 13 and most of its sub functions are available for 'All Machines'.
Yes, a quick google turns up this page which has some more information.


JAL
Post Reply