diff --git a/README.md b/README.md
index f5a566dc03fdd15db8b95879932cb05c0db72e3c..2b44496dcfbe3b3dbd3c590570aa3f9cd0072fde 100644
--- a/README.md
+++ b/README.md
@@ -25,8 +25,8 @@ This setup will let you have a full linux environment on your windows machine, W
 * This repository assumes that you have a copy of the OS/161 source code on the local machine.
 * You **should** have a remote repository to manage your OS/161 source code and move between the local and linux.student environments. 
 
-* If you do not currently have a working copy of os161, you can retrieve your own by copying the
-`os161.tar.gz` file within `os161-container/dependencies` directory in the cs350-container repository.
+* If you do not currently have a working copy of OS/161, you can retrieve your own by copying the
+`os161.tar.gz` file within `os161-container/dependencies` directory from the cs350-container repository.
 ```
 cp os161-container/dependencies/os161.tar.gz ~/
 cd ~/
@@ -41,7 +41,7 @@ sudo ./install.sh
 ```
 In a terminal from within the project directory. This script will pull the assignments reposiroty and build it into a local copy of the os161-runner image.
 
-## Running OS161 in the cs350-container
+## Running OS/161 in the cs350-container
 To start using the container you use the run.sh script, which takes one argument -- the directory of your working code repository.
 
 ```
@@ -72,15 +72,14 @@ fails that is okay (means there was no build to begin with), just run `build_ker
 
 * Now in another terminal, move to the project directory and use the `./connect.sh` script to connect to the previosuly running container:
 ```
-# cd /os-compile/
-# cs350-gdb kernel
 # cd os-compile/
 # cs350-gdb kernel
 
 GNU gdb 6.6
 Copyright (C) 2006 Free Software Foundation, Inc.
 ...
-(gdb) dir /kernel/kern/compile/ASST0
+(gdb) dir /os161-1.99/kern/compile/ASST0
+(gdb) target remote unix:.sockets/gdb
 ...
 ```
 You will need to use the command `dir /kernel/kern/compile/ASST#` where `#` is the assignment number. This will make sure to load the symbols
@@ -88,17 +87,36 @@ of the kernel. Symbols are the names we have given functions and variables. This
 
 Note: If run.sh fails it means there is still a os161-runner container running. Use `docker kill os161` to kill it.
 
-## Running other assignments
-You may point the `run.sh` in any directory, the script makes sure that the directory is shared between the container and you. Allowing you to
-continue to code and work on the files within the directoy and have the container running and seeing those changes. Further instructions will
-be given to the scripts used to run and evaluate userspace code.
+## Building and installing OS/161 userspace programs
+User-level programs are built and installed from the directory /os161-1.99/. 
+To build and install all of the user-level programs, in the container
+
+You can type
+```
+cd /os161-1.99/
+bmake
+bmake install
+```
+User-level programs are installed under $OS161TOP/root/ in the bin, sbin, testbin and uw-testbin directories.
+
+## Running Linux userspace assignments
+To run the Linux userspace programs in the container, that are part of the progrmaming assignment, you must start the container using the `run.sh` script, which takes one argument -- the directory that holds your code for that userspace programming assignment, that is, the `c` files for the programming assignments. For example,  
+
+```
+sudo ./run.sh ~/cs350-teststudent/a0
+```
+Once you are inside the container, you can run
+```
+./run_assignment.sh ASSTUSER#`
+```
+ where `#` represents the assignment number. 
 
-When mounting other directories that are not os161 note that the `build_kernel` and `test_kernel` functionality will not work.
+It is important to note that: when mounting other directories that are not OS/161, the `build_kernel` and `test_kernel` functionality will not work.
 
 ## [Layout](Layout)
 There are some noted directories within the container
 * `/kernel` holds YOUR assignment code
-* `/os161-1.99` holds unchanged os161 kernel code
+* `/os161-1.99` holds unchanged OS/161 kernel code
 * `/os-compile` holds the compiled version of the code
 * `/assignments` holds testing and evaluation scripts used for each assignment