Home arrow Forums
OSDEV Forums  


Mike359
User

Senior Osdever
Posts: 27
graphgraph
Karma: 1  
DEC Alpha - 2006/08/24 13:23 *Heart* I love the 64-bit Alpha Architecture *Heart*
Now being a man who all about portibility and "reuseablity" I wanted to port my kernel on to the fleet of DEC Alphas.

I have an entire CD of documentation (From Digital, Compaq and HP) of CPUS, Motherboards, Chipsets and eveything in between. I am getting an AlphaStation soon but I need to know hwo does the OS boot on their? I know about the SRM console and the AlphaBIOS for Windows NT. Which one should I use or all they both compatible? How do I get my OS boot on SRM and AlphaBIOS for compatiblity?
  | | The administrator has disabled public write access.
OSDEV
Community
Advertisement
   
gaf
User

Platinum Osdever
Posts: 153
graph
Karma: 10  
Re:DEC Alpha - 2006/08/25 14:14 I know about the SRM console and the AlphaBIOS for Windows NT. Which one should I use or all they both compatible?

Hello Mike,
from what I could find out the two methods are not compatible. The original firmware SRM was used by OpenVMS and almost all of the unixsh systems, most notably OpenBSD. As usual microsoft just could do it the normal way and thus had to introduced an alternative firmware called ARC (AlphaBIOS is the graphical version of it). Linux can be run from both firmwares, although SRM seems to be more native to it due to its unix like design. Most modern alpha systems support both methods and allow the user to choose which one he wants to use. Less recent systems may however not have a sufficiently large EEPROM to hold both firmwares. In that case you'll have to make a decision..

I am getting an AlphaStation soon but I need to know how does the OS boot on their?
The ARC firmware seems to do much more than the x86 BIOS and can almost be compared with a small bootloader. It's capable of accessing DOS partitions and can be set up to load an exe-file that may then start the operating system.

SRM on the other hand does works quite similiar to a PC BIOS. To load an operating-system the firmware reads-in the first sector of the boot device. This first sector can be compared to the MBR as it contains information about the position and length of the loader's image.

In my opinion you should be better off with SRM as it's really only a simple and easy to understand low-level mechanism. ARC doesn't only seem to be much more comlex, but also restricts you to a certain loading method. In case that you need additional information you migh have a look at the redhat documentation (Index, ARC, SRM).

Code:

 SRM boot-sector: struct  boot_block {     u_int64_t    vax_code[17];     u_int64_t    reserved[43];     u_int64_t    count;           // Number of sectors     u_int64_t    lbn;             // LBN of the first sector     u_int64_t    flags;           // Always zero     u_int64_t    chk_sum;         // Sum of the first 63 longs };



Just out of curiousity: Did you have any success with your M68K port ?

regards,
gaf
  | | The administrator has disabled public write access.
Mike359
User

Senior Osdever
Posts: 27
graphgraph
Karma: 1  
Re:DEC Alpha - 2006/08/25 16:04 Gaf you are the man
Thank you soo much. Im going to go find my Alpha Document CD and start porting this over.

Oh the M68K port is going well. Im doing a "blitzkrieg" of ports of my kernel I have plans for the Amiga and Mac Classic/SE but if they go quick who knows what other 68K devices will surrender their mystery to me

Post edited by: Mike359, at: 2006/08/25 17:07
  | | The administrator has disabled public write access.
Mike359
User

Senior Osdever
Posts: 27
graphgraph
Karma: 1  
Re:DEC Alpha - 2006/08/25 18:18 Well as you may of noticed being a man of portibility I really want my OS to run on any Alpha configuration. I found my Alpha CD and looking through all the processors, motherboards and systems from the early 21064s to todays HP Alpha computers really looks to be quite a challenge.

If code is written for a 21064 will it run on a new HP Alpha? Cause I just want the user to sit down and go. I just want to know if this is possible. If it is I can start work soon and show a build soon.
  | | The administrator has disabled public write access.
gaf
User

Platinum Osdever
Posts: 153
graph
Karma: 10  
Re:DEC Alpha - 2006/08/26 11:09 If code is written for a 21064 will it run on a new HP Alpha?
I would guess that all processors of a certain architecture should at least have a compatible instruction set. Internally the cores might of course differ considerably, but the software shouldn't have to worry about that (everything else would kill compatability).

Nevertheless it's possible that there've been some extentions to the alpha architecture that allow newer processor to benefit from additional opcodes or other modern techniques. More drastical changes, as they can be seen on the x86 platform (real-mode to protected-mode), are in my opinion however not to be expected as the alpha architecture has already been quite mature when the first model was released.

The other important question is whether alphas support something similiar to the x86 legacy devices (console, floppy, timers). If there's no standard way of accessing the most basic devices, you won't have any other choice but writing hardware specific drivers. This is already hard enough for today's ubiquous PC components, and I would imagine it to be virtually impossible for dated alpha hardware.

Probably it would be a good idea to find out what device-standard exist before starting with the actual porting..

I found my Alpha CD and looking through all the processors, motherboards and systems from the early 21064s to todays HP Alpha computers really looks to be quite a challenge.
Probably many of these papers are actually aimed at hardware developers. As a software developer all you really have to know is how the architecture works in general and how the hardware can be programmed. Sounds quite easy, doesn't it ?

Oh the M68K port is going well. Im doing a "blitzkrieg" of ports of my kernel I have plans for the Amiga and Mac Classic/SE but if they go quick who knows what other 68K devices will surrender their mystery to me
Glad to hear that you're making some progress. It would be great if you could add some information to either of the two OS wikis (mega-tokyo, osdev.org) once you've finished your port. Unfortunately there's still very little documentation available about these architectures..

regards,
gaf
  | | The administrator has disabled public write access.
Mike359
User

Senior Osdever
Posts: 27
graphgraph
Karma: 1  
Re:DEC Alpha - 2006/08/26 14:23
Nevertheless it's possible that there've been some extentions to the alpha architecture that allow newer processor to benefit from additional opcodes or other modern techniques.

Yeah the 21164PC I belive had Motion Video Instructions addded.


If there's no standard way of accessing the most basic devices, you won't have any other choice but writing hardware specific drivers.

Well looking at these manuals Digital (and HP) praise the Alphas device standard. I can always look around. I know some device White Papers exist on a few devices. I have some but it would not hurt to get some more.


Probably many of these papers are actually aimed at hardware developers. As a software developer all you really have to know is how the architecture works in general and how the hardware can be programmed. Sounds quite easy, doesn't it ?

Still its a good idea to have them Well I need to find an AlphaStation or an AlphaServer. Once I get it then I will start porting my x86 kernel over. Now I just need to find some Win32 Alpha Assemblers, C/C++ compilers and linkers.


Glad to hear that you're making some progress. It would be great if you could add some information to either of the two OS wikis (mega-tokyo, osdev.org) once you've finished your port. Unfortunately there's still very little documentation available about these architectures..


Will do. Most wiki sites delete info I add even if its genuine
  | | The administrator has disabled public write access.

A WebArticles site. Sponsored by Evoleto. Motorola V525 / Business Directory / Delaware Incorporation / Home Made Bazaar