# Where can I obtain the ARM FreeBSD kernel?



## TAL15 (Aug 16, 2017)

Hello, 
I'm looking for a way to get the FreeBSD kernel for ARM CPU's. I want to learn more about the BSD kernel. And I think learning how to extract/download the kernel is a good step forward.

Thanks.
TAL15


----------



## Phishfry (Aug 16, 2017)

There is no special Arm kernel. All kernels are built from the same source but compiled with different architecture flags.
They also use the DWITH_FDT flag for the FDT support. There are also ubldr and uboot parts involved to booting the kernel.

https://wiki.freebsd.org/FlattenedDeviceTree
https://kernelnomicon.org/?p=351

I think that studying the /src kernconf files will show you the differences.


----------



## TAL15 (Aug 17, 2017)

Okay... but, where could I obtain the kernel?


----------



## Phishfry (Aug 17, 2017)

Well if you want to see one then download an SD Card image for Arm from the website.
Uncompress and Mount the image and navigate to /boot/kernel/kernel

I really don't see what good a compiled kernel does for learning.

Have you looked at the kernconf's in source?
/usr/src/sys/arm/conf/

Here are the fdt files:
/usr/src/sys/boot/fdt/dts/arm/


----------



## Phishfry (Aug 17, 2017)

So here is RaspberryPi2 for example.
https://download.freebsd.org/ftp/re....1/FreeBSD-11.1-RELEASE-arm-armv6-RPI2.img.xz
You would download this and uncompress the image. Then write the image to a usb memstick or microSD Card or whatever.
Then you can mount the usb memstick from a FreeBSD computer and navigate the filesystem and browse the kernel structure..
The actual kernel is named kernel.


----------



## SirDice (Aug 17, 2017)

Note that on FreeBSD the kernel and OS are a complete set. Contrary to Linux for example, where the kernel is a single, separate, entity.


----------



## TAL15 (Aug 19, 2017)

Okay, 
If I wanted to build my own BSD where would I get the kernel, so I could start building my own Operating System.
Sorry, I figured this'd be a good example of what I'm trying to do.


----------



## Phishfry (Aug 19, 2017)

https://www.freebsd.org/doc/handbook/kernelconfig-config.html


----------

