logoISU  

CS 456 - Systems Programming

Spring 2024

Reading

  1. Handin on CS Server

  2. Angrave's Programming - Kernels, File descriptors Shells

  3. Red Hat Linux - What is a kernel?

  4. Download the Linux Kernel From Here

  5. Wikipedia - Linux Kernel

  6. Baker's CS 456 - Basic File I/O

  7. Angrave's Programming - Processes: Introduction

  8. Angrave's Programming - Forking: Introduction

  9. Angrave's Programming - Forking: Fork, Exec, Wait

  10. Linux Manual Page - opendir

  11. Linux Manual Page - readdir

  12. Linux Manual Page - closedir

  13. struct passwd

  14. struct group

  15. Wikibooks - dirent.h

  16. Tutorial- Write a Shell in C

  17. GDB Quickstart

  18. A Simple Makefile Tutorial

  19. Wikibooks - x86 Assembly

  20. NASM Assembly Language Tutorial - 32 bit

  21. CS at Loyola Marymount - NASM tutorial - 64 bit

  22. Opcode Table

  23. Computer Science Stack Exchange: Why do we need assembly languge?

  24. Website for NASM Assembler

  25. CS 456 with Steve Baker: The Strtok C Library function

  26. Tokenization

  27. A Guide to Lex and Yacc

  28. Lex and YACC primer

  29. IBM: Write text parsers with yacc and lex

  30. Git and Gitlab Tutorial