Page 1 of 2
x86
Posted: Mon Apr 21, 2003 12:06 pm
by jamescox3k
It seems to me evry one in this forum is developing for the x86. This is all very well seems it's the most popular architecture on the planet and information is widly availible for it.
But I fear if we keep going down the path of this, now lets face it, dated, CPU we are doing technology no favors. Just adding more and more layers to an architecture makes it more and more complicated to code for. Much better CPU architetures exits. Why dose no one whant to develop for them?
This is a problem I think with people been afraid of whats new. We'll any if any one is developing an OS for other CPU's I'm very intresed in where you got your information from and how your projects going.
And if you dont agree with my comments why not?
Re:x86
Posted: Mon Apr 21, 2003 3:38 pm
by Pype.Clicker
i dunno for other people, but i got a look myself at IA-64, x86-64, Sparc 32 and motorola architectures (not mentionning PIC16f877 and C=64
... but as long as IA-32 is what i own, there is little meaning (imho) to develop an OS for a machine i don't even own !
I have the feeling that existing OSes (even modern) don't use more than 50% of that architecture's abilities ... so i want to give a try for a better use ...
Re:x86
Posted: Mon Apr 21, 2003 8:06 pm
by _mark
Economics is probably the reason most people develope for Intel. I would really doubt it has anything to do with fear. People that are scared of the unknown do not wake up one day and say "I'm going to write my own OS".
And anyone serious about their OS will have a plan for porting to another architecture if and when the opertunity arises.
_mark()
Re:x86
Posted: Mon Apr 21, 2003 8:55 pm
by Unspoken_Magi
Yeah.. I am developing for two completely different architectures at the same time, to ensure my code is portable.
Currently I'm developing for IA-32 and GBA ARM, but eventually I'll move on to something more reasonable.
Re:x86
Posted: Tue Apr 22, 2003 12:45 am
by distantvoices
well... good point this is.
I could develop for sparc 32, cuz i own a sparc station 4 - such an ancient thing it is, but it suffices as terminal
, but I lack the lust for doing so. I think, if I want to port my os thingy to it, a can do this later - with some redesign - make stack task switching running and so.
I agree with you on the point, that it is kinda queer to develop for an architecture many os'es exist already for. BUT I disagree with you on this: ix86 is dated. No.False. or would you consider sparc less "dated"?
@pype: be the c64 with you.
Re:x86
Posted: Tue Apr 22, 2003 2:04 am
by Perica
..
Re:x86
Posted: Tue Apr 22, 2003 3:16 am
by Pype.Clicker
another thing is that Intel architecture is pretty easy to program at assembly level (i mean DOS applications programming, not system programming, here).
you can do fairly complicated things like x=z+y*2 in a single instruction (lea eax,[ebx+ecx*2]) provided that x,y and z are registers, etc.
If you take something like SPARC, it is almost impossible to write correct machine code without the help of a compiler, because you have a RISC instruction set (so, for instance ALU operations are available ONLY on registers. If you want to increment a memory location, load it in the register set first, and store it when done! :-/ )
Re:x86
Posted: Tue Apr 22, 2003 4:51 am
by distantvoices
I've alse read rumblings about sparc-instruction-cache: you as the os-developer are to create cache specific functions f. ex. for flushing the cache and so on. quite a pain in the developers @$$ if he has to think about THAT too.
Re:x86
Posted: Tue Apr 22, 2003 11:35 am
by jamescox3k
Unspoken_Magi caused me some interest here.
I'm interested in how you would develop for multiple architecturs. For example how do you organize your code, files and folders. I know Linux has ports for i386 (Every ones fav), SPARC (Which I find intreeging), PowerPC, IA-64, etc.
So how do I organize my code to be portable.
Also do PCI, AGP and USB type devices work in differnt achitectures?
Re:x86
Posted: Tue Apr 22, 2003 12:31 pm
by pskyboy
Organising your OS to be portable is really up to you and the way you write your OS. I am personally following the WinNT route and have/will have a Hardware Abstraction Layer.
Peter
Re:x86
Posted: Tue Apr 22, 2003 7:38 pm
by Unspoken_Magi
pskyboy wrote:
Organising your OS to be portable is really up to you and the way you write your OS. I am personally following the WinNT route and have/will have a Hardware Abstraction Layer.
Peter
Yeah.. HAL is the way to go. I'm using it for my OS, and it definitely makes things much easier to port. All you have to do is rewrite the system specific HAL functions, which keeps everything else the same. HAL keeps your code much cleaner, as well.
Re:x86
Posted: Tue Apr 22, 2003 7:50 pm
by Perica
..
Re:x86
Posted: Tue Apr 22, 2003 8:35 pm
by _mark
HOW TO HAL???? Anyone got a guitar handy - that could be a fun one.
Seriously...
Don't forget to look at the oskit.
http://www.cs.utah.edu/flux/
From my understanding they have a HAL pretty much all layed out for you. All you have to do is pick up thier libraries and start writting a kernel. I would recomend this if you are new to things like how to implement a HAL. At least get enough under your belt to be truely comfortable and then define your own.
_mark()
Re:x86
Posted: Wed Apr 23, 2003 1:21 pm
by slacker
is everything that doesnt use an intel/amd processor not x86? what architexture is macintosh?
Re:x86
Posted: Wed Apr 23, 2003 1:25 pm
by Tim
Current Apple computers are PowerPC-based. Old Macintoshes used the Motorola 68K series of processors.