Computer Systems Organization
Prof. Mohamed Zahran
(aka Prof. Z)
mzahran AT cs DOT nyu DOT edu
M/W 11:00am-12:15 pm
Location: WWH 312
Office Hours: Mondays 3-5pm
Welcome students! ... to
the Computer Systems Organization course, edition Spring 2013.
I will keep updating this page regularly. If you have
questions related to that course feel free to email me.
Here is some basic information:
- Here is the course syllabus
- Our grader: Tao He - His email: th1133 ( at ) nyu.edu
- Our grader will be holding 5 recitaion sessions (one
for each lab) to answer questions about the lab. These recitations are
totally voluntary. You do not need to attend them if you do not have
questions or if you prefer email us your questions. Here are the
time/dates/place for these recitations (also you are more than welcome
to attend the recitations given by the grader of the other two sections
of that course if their time/dates are more suitable for you) :
Lab 1: 2/6 202 CIWW - 12:30PM - 1:45PM
Lab 2: 3/7 201 CIWW - 12:30PM - 1:45PM
Lab 3: 3/12 201 CIWW - 12:30PM - 1:45PM
Lab 4: 4/10 202 CIWW - 12:30PM - 1:45PM
Lab 5: 5/1 202 CIWW - 12:30PM - 1:45PM
Final exam May 20th 10-11:50am WWH 312 (note the time change)
Sign up for the Mailman mailing
list for the course. You can do so by clicking here.
Please follow the mailing list etiquette.
- Use the Reply command to
contribute to the current thread, but NOT to start
- If quoting a previous message, try to trim off
- Use a descriptive Subject: field when starting a new topic.
- Do not use one message to ask two unrelated questions.
- Do NOT make the mistake of sending your
completed project assignment to the mailing list!
BO chp 1
2-3 C Programming
4-5 Bits, Bytes, and Integers
6 Floating Points
7 Machine Level Programming I
BO 3.1-3.4 and 3.13.1-3.13.3
8. Machine Level Programming II
BO 3.5-3.5 and 3.13.4
9. Machine Level Programming III
10. Machine Level Programming IV
BO 3.8, 3.9, 3.13.5
11. Machine Level Programming V
BO 7.1 -> 7.11
14. Exceptions and Processes
BO 8.1 -> 8.4
15. Multitasking and Signals
BO 8.5 and 8.7 (skim
8.5.5 and 8.5.6)
16. System-level I/O
BO chp 10 (skim 10.4)
17. Virtual Memory: Concepts
BO 9.1 -> 9.6
18: Virtual Memory: Systems
19. Dynamic Memory Allocation: Basics BO 9.9 -> 9.9.12
20. Dynamic Memory Allocation: Advanced BO 9.9.13 and 9.11 (skim 9.10)
BO 11.1 ->
22. Network Programming
23. Web Services
BO 12.1 and 12.3 (skim 12.2)
12.5(part before 12.5.1), 12.5.2, 12.5.3, 12.5.4, 12.7.1,
First, you need to setup your lab environment and read about submission policy.
RKlab Due Feb 15, 11:59pm.
You can test your own submission! Here are the instructions on how to do that.
Lab 2: (11.25%)
Bomblab Due March 13th, 11:59pm.
Lab 3: (11.25%)
Buflab Due March 31st, 11:59pm
Lab 4: (11.25%)
Shell lab Handout Due April 21st, 11:59pm
email your tsh.c to our grader with subjec line: your_last_name: lab 4 submission
Of course do not forget to write your name and login ID at the top of tsh.c
Lab 5: (15%)
Mallocal Lab Handout Due May 13th, 11:59pm
If you are working in a group of 2, only one student submits. But be sure to include both your names in mm.c
- type tar -cvf handin.tar mm.c
- Submit the resulting handin.tar using this link.
You can check your grade using this link.
(Note: Forgetting to write names and ID in mm.c will result in a penalty)
Links (Geeky stuff )
If you have an
interesting link, please email it to the instructor and it will find
its way to this page.Unix tutorial
Unix commands cheat sheet
gdb cheat sheet: here (for 32-bit) and here (for 64-bit)
About coding style (If we cannot understand your code, your grade may be affected!!)
Intel 64 and IA-32 Software Developer manuals
Signal sets (Thanks David Taylor)