IST-4-ASM + IST-4-OPS
Aperçu des sections
-
For all questions and demands, please e-mail us both: lionel.morel@insa-lyon.fr + guillaume.salagnac@insa-lyon.fr. Thanks !
-
Welcome to "IST-4-OPS", where you will learn about operating systems and C programming.
Worksheets
- First steps on the Unix command line
- topics: terminal, shell, commands, files vs directories, ls, cd,mkdir, cp, mv, rm
- topics: terminal, shell, commands, files vs directories, ls, cd,mkdir, cp, mv, rm
- Compiling and debugging a C program
- topics: gcc=cpp+cc+as+ld, objdump, gdb (breakpoints, single-stepping, examining memory)
- topics: gcc=cpp+cc+as+ld, objdump, gdb (breakpoints, single-stepping, examining memory)
- Introduction to the C language
- topics: syntax, variables, types, control structures (if, for, while), functions, formatted output with printf
- Arrays and Pointers
- topics : pointers and addresses, arrays, strings, passing command-line arguments to your programs
- topics : pointers and addresses, arrays, strings, passing command-line arguments to your programs
- Processes, kernel and system calls
- topics : kernel, userland, system calls, processes
- exercise sheet
- slides
- topics : kernel, userland, system calls, processes
- File Input/Output
- topics: file descriptors, open/close/read/write syscalls, stdio streams, fopen/fgets/etc, bufferin
- Memory Allocation
- First steps on the Unix command line
-
Welcome to "IST-4-ASM" where you will learn to program in assembly. This course has no theoretical prerequisites and relies fully on hands-on learning. So please bring your laptop with you (and install python3 if it is not done already).
Lecture notes / worksheets
- Information Coding
- topics: binary numbers, conversion to/from decimal, hexadecimal notation, ASCII encoding, RGB colors
- files: rgb.py
- Binary Arithmetics
- topics: binary addition and subtraction, two's complement representation, sign extension, binary multiplication
- topics: binary addition and subtraction, two's complement representation, sign extension, binary multiplication
- The Von Neumann Architecture
- topics: CPU, memory, registers, machine code vs assembly, immediate operands, step-by-step execution
- files: scat.zip (assembler and simulator), isa-card.pdf (Instruction set reference sheet)
- Control Flow
-
topics: control structures (loops, alternatives), pseudo-instructions, mandatory vs conditional jumps, breakpoints
- Memory Load/Store Instructions
-
topics: addressing mode, base+offset register-indirect addressing, literal data with .word directive
- Memory-Mapped Input/Output
-
topics: address space, main memory vs peripherals, framebuffer
- Subroutines
-
topics: calling and returning from a procedure, Link Register, input and output parameters
- Execution Stack
-
topics: concept of memory stack, push/pop instructions, stack pointer, function prologue/epilogue
- Recursion
- topics: recursive functions, calling conventions, parameter passing
Past Exams
- Fall 2022: exam - solution
- Fall 2022: retake exam - solution
- Information Coding