Home - Log in

Computer architecture

113-2 Computer architecture Physics Engineering and Embedded Systems - Apprenticeship S7
Lessons : 6 h TD : 0 h TP : 9 h Project : 0 h Total : 15 h
Co-ordinator : Dimitri Boudier
Prerequisite
- Bases in C langage (procedural langage, etc)
- Bases in software development tools (IDE, UNIX shell, Makefile, etc)
- Bases in numerical systems (combinatorial et sequential analysis, boolean algebra, etc)
Course Objectives
- Understand the generic architecture and the functionning of a computer
- Understand the generic architecture and the functionning of a GPP (General Purpose Prodessor)
- Understand the role and the functionning of processor cache and PMMU (Paged Memory Management Unit)
- Understand the compiling and linking workflow
- Understand the adressing modes, as well as the allocations modes and associated logicals segments
- Analyse the content of software stack after execution trace and content of a ELF (Editable Linkable File) binary file
- Analyse an assembly program
Syllabus
https://foad.ensicaen.fr/course/view.php?id=696

During main Courses (demonstrations on x86/x64 architectures and UNIX-like GNULinux system) :
- Functionning of a CPU (Central Processing Unit) and domain introduction
- Heterogeneity of processors architectures
- UNIX-like system introduction
- Compiling and linking workflow
- Binary file and ELF format
- Functionning of a processor cache
- Functionning of pagination unit (PMMU or Paged Memory Management Unit)

During Practical Works (analysis only, on x86/x64 architectures and UNIX-like GNULinux system with GCC) :
- Compiling and linking
- Automatic allocation and stack management
- Static allocation and ELF file
- Dynamic allocation and heap management
- Hardware exception and UNIX signal
- Partitions table and files systems
Practical work (TD or TP)
No practicals works application. Teaching frame only in analysis of elementaries C files !

Hadrware and software tools :
- x86/x64 computer (Intel GPP and chipset)
- UNIX-like GNULinux Operating System (ubuntu)
- GCC toolchain and UNIX shell
Acquired skills
- Understand the generic architecture and the functionning of a computer
- Understand the generic architecture and the functionning of a GPP (General Purpose Prodessor)
- Understand the role and the functionning of processor cache and PMMU (Paged Memory Management Unit)
- Understand the compiling and linking workflow
- Understand the adressing modes, as well as the allocations modes and associated logicals segments
- Analyse the content of software stack after execution trace and content of a ELF (Editable Linkable File) binary file
- Analyse an assembly program
Bibliography
C LANGAGE : The C Programming Language – Kernighan et Ritchie
PROCESSOR ARCHITECTURE : Structured Computer Organization - Tanenbaun
TOOLS : https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.pdf

© 2024 - ENSICAEN ( Legal Notices - Credits )