Introduction:
FreeBSD is a "UNIX like" opensource operating system. Not like Linux, which provides only the kernel, FreeBSD provides full fledged - fully equipped operating system. The history of the operating system dates back to 1993.
And it is the most popular BSD (Berkeley Software Distribution) based operating system available in the open source community.
I would recommend you to read the history of FreeBSD a little. Links are available here:
https://en.wikipedia.org/wiki/FreeBSD
https://en.wikipedia.org/wiki/Research_Unix
You will find the history rather interesting.
From my reading I got to know that FreeBSD doesn't have micro kernel (original BSD and modern UNIX has ) instead it has monolithic kernel like Linux. Correct me if I am wrong.
Anyway I decided to try out FreeBSD on my Beagle Bone Black.
Setup the uSD card:
After couple of failed attempts I got everything running. Here is the steps.
STEP 1 :
Insert the uSD on your host device ( In my case it's an Ubuntu 18.04 PC)
STEP2 :
Identify the partitions using lsblk command.
as you can see in my case the uSD card is mounted as sdb device. unmount the device
umount /dev/sdb1
STEP3:
Download the FreeBSD operating system
wget ftp://ftp.freebsd.org/pub/FreeBSD/releases/arm/armv7/ISO-IMAGES/\12.0/FreeBSD-12.0-RELEASE-arm-armv7-BEAGLEBONE.img.xz
STEP4:
Extract and load the image to the card
xz -d FreeBSD-12.0-RELEASE-arm-armv7-BEAGLEBONE.img.xz sudo dd if=FreeBSD-12.0-RELEASE-arm-armv7-BEAGLEBONE.img of=/dev/sdb bs=1M
Bootable image is ready!
Now comes the booting part. Insert the uSD card into the slot. Wire-up the Serial header to a serial-to-USB converter. Connect the USB to the host PC.
Press Down the "boot" button (next to the uSD card slot) and plugin the USB/DC-JACK to power-up the device. This makes sure that the board is booted from the uSD.
If everything goes well your beagle bone black will start throwing boot information through the serial port.
I used screen to view serial console. You can use your favorite one.
screen /dev/ttyUSB0 115200
You can login with either "root" or "freebsd".
password for root is root
password for freebsd is freebsd
Lets take a look at the root directory
cd / ls
Looks very similar to Linux root file system right ?!!
Now lets do some GPIO programming.
As you know there are 4 LEDs.
cd /dev/led
There are 4 led files. Lets Turn on one LED.
echo "1" > beaglebone:green:usr2
That's it for now !
Thanks.
Top Comments