CS 3411 Systems Programming

Course Information


Office

Rekhi 303

Phone

487-2123

Office Hours

By appointment. Send me an e-mail requesting an appointment and I will send you an invite.

Teaching Assistants

Matt Schwennesen

Direct your questions to preferably to Matt, if your M number is even.

Tristan Singleton

Direct your questions to preferably to Tristan, if your M number is odd.

Syllabus

syllabus.pdf



Running gcc cross compiler to generate assembly files:

1. Login to one of the lab machines, or colossus.it.mtu.edu.

2. Create a simple C program, say test.c

3. Compile it using the regular gcc compiler and make sure it compiles correctly:

gcc test.c

4. Run it

a.out

4. Compile it using the cross compiler :

/local/classes/cs4431/adl-system/adl-sysroot/bin/mipsel-scale-linux-gnu-xgcc -I/local/classes/cs4431/adl-system/adl-sysroot/usr/include -S test.c

5. Examine the generated MIPS assembly file test.s





Lectures


01.

Course Introduction

02.

C Review I

03.

C Review II

04.

I/O

05.

File Systems and Protection

06.

Kernel I/O Calls

07.

Unix Processes I

08.

Unix Processes II

09.

Linking and Loading

10.

Signals I

11.

Signals II

12.

Pipes

13.

Sockets I

14.

Sockets-All

15.

Termio All

16.

Memory Map