EECS 2021

Computer Organization


Syllabus
Notes
Notices
Dates
Labs
FAQs
Contact Info
Marks
Last Modified:
Sep 6 2023

Frequently Asked Questions

Do I need to submit the solutions to prelabs> No, you need to submit only the answer to the questions that are released to you during the lab (typically the programming questions and the multiple choice ones)

Do I need an EECS account? Yes. If you do not have go to here and follow the link to activ8.

Why does my submit fail? (Not applicable this year) These are the most common reasons:

  1. Wrong command. Please cut and paste from the lab question page.
  2. You are doing it on you local computer. Use the remote desktop facility.
  3. You are typing the command on a terminal window that is already running another program (like rvs or an editor) if you type the command, hit return and nothing happens. Press control-Z (that is hold down the control key on your keyboard and press Z) to suspend the editor or rvs or whatever is running. Then type bg to put it in the background. You will see the prompt. You can retype the submit command.
  4. You are in the wrong directory if the command responds by saying the file does not exist. Look at your rvs window. There should be a pane near the top that is labelled Fname. The directory of this file is everything before the filename. If for example the pane reads Fname:/home/minas/EECS2021/Labs/addarray.asm the directory is /home/minas/EECS2021/Labs/. Type
    cd /home/minas/EECS2021/Labs/ and issue the submit command again.

Alternatively you can use the websubmit.

When do we do the prelabs? Before your lab. If you do not, you might not be able to answer the programming question or do very well on the quiz. During the 3-hour lab you do the programming question and the quiz.

If I get my work in the lab checked by a TA, do I need to submit as well? Yes, so if there was a problem it will be easier to resolve.

Are the prelabs (like LabA) marked? No they are not. But doing them will help you do the programming question and the quiz during your lab session. They are very well written and self explanatory.

Is there a eclass page for the course? Yes. go to moodle

How do I know where to go on zoom? I will be e-mailing the link before the lecture.

Are the lectures recorded? Yes, they are. I will upload them shortly after each lecture. You should find them on eclass (moodle successor).

What chapters are covered in the final? All that we covered in class (including Appendix I, in the Logic and Verilog notes).

What chapters are covered in the midterm? Ch. 1, 2, and 3 as well as the appendix up to last slide we covered in class in the Logic and Verilog notes.

What kinds of questions should we expect in LabTest? All programming techniques we discussed in the lectures, or did in the labs are within the material examined in the LabTests. If you studied and understood all examples in the lecture notes and the labs (pre-labs and lab programming questions) you most likely will do well.

What editor should I use? The choices are in order of my personal preference:

  • emacs a robust extremely powerful and extensible editor. I use it for everything (programming, debugging, calendar, viewing PDFs, creating html documents, organizing, etc). It is extensible in a variant of lisp. Works well within a GUI, but its greatest advantage is that you do not need to take your hands off the keyboard. It has a huge list of shortcuts. I use it since 1984. It is the quintessential open source software. The source, half and half in C and lisp is so well written that it is pleasant to read.
  • vi One of the oldest, was recently revamped and increased in popularity. Its origins go back many many years. Not as powerful or flexible as emacs, but lets programmers be very efficient.
  • eclipse a very powerful IDE, comes with an editor and is quite popular especially for beginners. It is useful for languages that are supported. I do not use IDEs. Open source.
  • Visual Studio a popular Microsoft IDE. Proprietary but well regarded by many professionals.
For more information google these four options. There are many editors out there but most are suited for one-line love letters only.

Should I buy the textbook? You are not required to buy the textbook but I generally recommend buying it. It is a good book in its own right. Some students prefer to use the lecture slides, and google the topics they do not understand. This is an individual choice.

How to run RVS on a toy computer? Toy computers, aka Macs, run Unix, essentially. To run what you downloaded you need to open a terminal and

    cd ~/Downloads     # Go to the directory you downloaded into.
chmod u+x RVS.mac # Tell the system to consider the file RVS.mac executable
./RVS.mac # execute it.

there may be a better way; ask someone that thinks Macs are computers.

It is a bit more complex to make it run as a regular app.

How to install and run RVS046 on Linux? On a Linux box you download the software as usual. The file typically goes to your Downloads directory. You have to copy it to whereever your executables reside. Typically the bin directory in your home directory. You can do this by typing in a terminal the following:

mkdir -p ~/bin
mv ~/Downloads/RVS046 ~/bin

but this is not enough. You need to make it executable. You do this by typing in a terminal the following:

chmod u+x ~/bin/RVS046

which will allow you to execute it by typing

~/bin/RVS046

or just

RVS046

If the former works and the latter does not you need to augment your PATH which you do by editing your ~/.bashrc file and adding the following line at the end of the file:

PATH=${PATH}:${HOME}/bin/
and saving the file