Systems, Science, and FreeBSD

Here is a presentation by Neville-Neil about Systems, Science, and FreeBSD. Here are two of my most interested ideas: Netmap.  By mapping the NIC to a process memory space, user-space applications can send and receive Ethernet (?) frames directly.  This avoids going through the operating system network stack for every and single frame, and this … Continue reading Systems, Science, and FreeBSD


Console Graphics

Do you ever miss the good-old child times where you get BASIC or LOGO, and a screen for whatever you like to draw?  Here is how you can do it with SVGAlib.  In addition to FreeBSD, the code can be run elsewhere, I mean hmm...  So now you can program without even using X11. Installing … Continue reading Console Graphics

Some FreeBSD Package Commands

Modern FreeBSD comes with the pkg(8) package manager which is handy for installing precompiled binary packages.  Like package managers elsewhere, the manager here is also very versatile.  Here are some of the commands I use for daily purposes. I use pkg-rquery(8) and pkg-query(8) whenever possible.  The former queries the database in the repository and the latter queries … Continue reading Some FreeBSD Package Commands

Minimal Init

Here is a minimal init program that runs after the kernel boot.  Well, it does nothing except printing a hello world statement.  The system kernel panics once the program finishes. The program working principle is to first mount the device file system, with the nmount(2) system call.  Then, print to the "/dev/console" and quit.  Before … Continue reading Minimal Init

Network Booting FreeBSD

Installing an operating system is easy for a computer or two.  What about installing for multiples of them?  In some situations, one wants to save money and time from buying that many boot devices and maintain the disk images separately.  Network boot comes handy.  It is relatively easy with FreeBSD, especially since we do not … Continue reading Network Booting FreeBSD