proc: fix refcounting bug in proc_get_set()
[akaros.git] / GETTING_STARTED.md
index 41ad619..20a21d1 100644 (file)
@@ -54,6 +54,9 @@ environment.  AKAROS_ROOT is the Akaros repo directory.  AKAROS_XCC_ROOT is a
 directory of your choosing where the toolchain will be installed (more on that
 in Section 3.1 below).
 
+I also suggest running `scripts/one-time-setup.sh`, once per `git clone`.  This
+performs various checks and other setup.  Check it out for details.
+
 The first step is to configure the kernel.  Targets like `config`,
 `menuconfig`, and some of the other KBuild targets work.  Defconfig gives you a
 default configuration.  For example, to config for 64-bit x86:
@@ -109,8 +112,8 @@ instance, my path contains:
 
 `/home/brho/classes/akaros/akaros-gcc-glibc/install-x86_64-ucb-akaros-gcc/bin`
 
-You can also set up `MAKE_JOBS`, so you don't over or under load your system when
-building.  I have a 2 core laptop, so I use `MAKE_JOBS := 3`
+You can also set up `MAKE_JOBS`, so you don't over or under load your system
+when building.  I have a 2 core laptop, so I use `MAKE_JOBS := 3`
 
 At this point, you can build (for example):
 
@@ -170,7 +173,7 @@ see this, then you probably didn't actually fill KFS properly.
 
 ```
        Building initramfs:
-               Adding kern/kfs to initramfs...
+       Adding kern/kfs to initramfs...
 ```
 
 
@@ -235,10 +238,10 @@ Anyway, I put that img in `AKAROS-ROOT/mnt/`, and make a folder next to it:
 Personally, I always have `hdd.img` mounted.  Some of the other devs have make
 targets that mount and umount it.  Whenever I reboot my development machine, I
 run a script (as root) that mounts the image file and sets up a few things for
-networking.  I put a script I use for this in `scripts/kvm-up.sh`.  You'll likely
-want to copy it to the directory **above** the akaros root directory and edit it
-accordingly. Feel free to comment out the networking stuff.  That's for using
-networking in `qemu`.
+networking.  I put a script I use for this in `scripts/kvm-up.sh`.  You'll
+likely want to copy it to the directory **above** the akaros root directory and
+edit it accordingly. Feel free to comment out the networking stuff.  That's for
+using networking in `qemu`.
 
 Now that your image file is mounted at `mnt/hdd`, you'll want to copy your
 freshly built kernel to the root of the image.  I have a make target in my
@@ -270,7 +273,7 @@ to `format=raw`) with "`-kernel obj/kern/akaros-kernel`".
 
 The `-monitor` is the qemu monitor, which is a CLI for qemu.  Pick a
 tab/terminal/pty in Linux that you will only use for qemu monitoring, and enter
-`tty'.  Whatever it tells you, put in place of `/dev/pts/3`.  I've been using
+'`tty`'.  Whatever it tells you, put in place of `/dev/pts/3`.  I've been using
 the same tab for about 4 years now.  In that tab, enter '`sleep 999999999`'.
 Qemu will still access it, but you won't have to worry about bash trying to
 handle your inputs.
@@ -289,8 +292,8 @@ networking, replace the "`-net user`" section with:
 
 `-net tap,ifname=tap0,script=no`
 
-The "`-net dump`" option saves a pcap trace of the network traffic.  This is very
-useful for debugging, but probably not needed for most people.
+The "`-net dump`" option saves a pcap trace of the network traffic.  This is
+very useful for debugging, but probably not needed for most people.
 
 Feel free to pick different values for the number of cpus and RAM (8 and 4096
 in the example).
@@ -390,7 +393,7 @@ Early on as a dev, there are lots of times where you accidentally don't run the
 right program (or kernel) and won't understand why your change isn't happening.
 A few `printk("WTF\n")`'s later, you realize you didn't have the `hdd.img`
 mounted, or you didn't fill KFS, or you didn't relink your binaries, or you
-forgot to save all files in `vi1 (and not just the current buffer).  But after
+forgot to save all files in `vi` (and not just the current buffer).  But after
 doing a couple `hello worlds`, you're set.
 
 Alternatively, you could have a make target to run qemu, which also touches all