# Porting concerns while migrating from wolfdale to sandy bridge



## saikatsanyal (Mar 8, 2011)

Hi,
 We have a FreeBSD 6.5 based system having Xeon 2.13GHz processor - wolfdale based. And we have a requirement of moving to a sandy bridge based platform. In that context, can somebody share his ideas on the following:
  a. What are the BIOS and bootloader changes that need to be considered
  b. Do we need to change anything in FreeBSD?
  c. Any other areas of concern...

Thanks,
Saikat


----------



## SirDice (Mar 8, 2011)

saikatsanyal said:
			
		

> a. What are the BIOS and bootloader changes that need to be considered


As far as I know, nothing.


> b. Do we need to change anything in FreeBSD?


Yes, you probably need a more recent version. 6.5 has been EoL for quite some time.


----------



## Chaitra (Mar 8, 2011)

Hi SirDice,

  Thanks for your response. I work with Saikat and hence taking the liberty of posing another related question. From your reply, looks like taking a later version of FreeBSD nothing extra has to be done to make FreeBSD to work on new architecture (x86 based). Is this assumption right?

In the same context, would like to get some insights on generally what needs to be done to port an OS on to a newer processor with the same architecture (for ex x86)? Of course the assumption is that the ABI, ISA etc are all backward compatible.

Regards,
Chaitra


----------



## SirDice (Mar 8, 2011)

Chaitra said:
			
		

> In the same context, would like to get some insights on generally what needs to be done to port an OS on to a newer processor with the same architecture (for ex x86)? Of course the assumption is that the ABI, ISA etc are all backward compatible.


I don't think you'll need to do much. About 80% of the code for FreeBSD is platform independent. 

You might want to have a read here: The Design and Implementation of the 4.4BSD Operating System


----------



## saikatsanyal (Mar 10, 2011)

Thanks 'SirDice' for your responses.
Just to summarize what I gathered thru' my research and your pointers:

a. Since we are dealing with x86 in either of the cases - the porting becomes much simpler. Even most of the machine dependent code can be reused
b. There could some change regarding boot media (image loaded from) - viz. we load from CF/USB..
c. Minor board specific stuffs might be neeeded - like get_serial_num etc.

Another interesting link I found: http://www.freebsd.org/doc/en/books/arch-handbook/boot.html

Thanks,
Saikat


----------



## Carpetsmoker (Mar 15, 2011)

The biggest problem you might run into is that FreeBSD 6 doesn't have any drivers for the mainboard's audio, NIC, etc.

ACPI-related stuff like sleep mode or temperature monitoring may also break.


----------

