Programmation proche du système

  • Teaching

    Details

    Faculty Faculty of Science and Medicine
    Domain Computer Science
    Code UE-SIN.02020
    Languages French
    Type of lesson Lecture
    Project
    Exercise
    Level Bachelor
    Semester SP-2021

    Title

    French Programmation proche du système
    German Systemnahe Programmierung
    English Systems-oriented programming

    Schedules and rooms

    Summary schedule Tuesday 09:15 - 13:00, Hebdomadaire (Spring semester)
    Struct. of the schedule 2+2h par semaine durant 14 semaines
    Contact's hours 56

    Teaching

    Responsibles
    • Cudré-Mauroux Philippe
    Teachers
    • Cudré-Mauroux Philippe
    • Luggen Michael
    Description Introduction to a basic system programming language (C): Constants, variables and basic types. Expressions, statements and control structures. Advanced types: pointers, arrays and structures. Functions, procedures, argument passing modes, scoping (local/global, private/public, and volatile/permanent variables).

    Introduction to system programming: memory model including static and dynamic memory allocation. Function call, execution stack and abstract syntax trees (AST) diagrams. ADT diagrams. Dynamic memory allocation (malloc, free). Process and thread models, including program counter (pc) and interrupts.

    Abstract data types: stack, queue, (double) linked list, token list, priority list and binary tree.

    Introduction to the Unix programming environment: command line, including pipe and input/output redirection. File system and privileges, including hard and symbolic links. Regular expression and Unix variables. Bash shell scripts, make, gdb debugger and performance tools. Secure remote access.
    Training objectives The student will first develop the ability to read C code, use Unix commands and test simple C programs. Then they will learn to write, debug and test C programs including simple concurrent programs, and use more advanced Unix tools (make, gdb debugger, Bash shell scripts). Finally they will learn to specify classical abstract data types in C.
    Condition of access

    Veuillez-vous inscrire sur le portail étudiant pour le cours afin de recevoir les informations du déroulement du cours. Présence obligatoire durant le cours en ligne.

    Si vous avez des difficultés de vous inscrire pour le cours par le portail étudiant, veuillez envoyer un message avec votre nom, Nr SIUS, Code et titre du cours à stephanie.fasel@unifr.ch.

    Comments

    Les unités d’enseignement se composent généralement de deux heures de cours et deux heures d’exercices par semaine. Nous vous prions de bien vouloir vous conformer aux délais d’inscriptions aux épreuves de la Faculté des sciences et de médecine.

    Softskills No
    Off field No
    BeNeFri Yes
    Mobility Yes
    UniPop No
  • Dates and rooms
    Date Hour Type of lesson Place
    23.02.2021 09:15 - 13:00 Cours PER 21, Room A230
    02.03.2021 09:15 - 13:00 Cours PER 21, Room A230
    09.03.2021 09:15 - 13:00 Cours PER 21, Room A230
    16.03.2021 09:15 - 13:00 Cours PER 21, Room A230
    23.03.2021 09:15 - 13:00 Cours PER 21, Room A230
    30.03.2021 09:15 - 13:00 Cours PER 21, Room A230
    13.04.2021 09:15 - 13:00 Cours PER 21, Room A230
    20.04.2021 09:15 - 13:00 Cours PER 21, Room A230
    27.04.2021 09:15 - 13:00 Cours PER 21, Room A230
    04.05.2021 09:15 - 13:00 Cours PER 21, Room A230
    11.05.2021 09:15 - 13:00 Cours PER 21, Room A230
    18.05.2021 09:15 - 13:00 Cours PER 21, Room A230
    25.05.2021 09:15 - 13:00 Cours PER 21, Room A230
    01.06.2021 09:15 - 13:00 Cours PER 21, Room A230
  • Assessments methods

    Written exam - SP-2021, Session d'été 2021

    Date 21.06.2021 10:00 - 12:00
    Assessments methods By rating
    Descriptions of Exams Selon modalité A de l'annexe du plan d'études en informatique
    Comment

    Written exam in presence / 120 minutes / closed book

    Written exam - SP-2021, Autumn Session 2021

    Date 30.08.2021 14:00 - 16:00
    Assessments methods By rating
    Descriptions of Exams Selon modalité A de l'annexe du plan d'études en informatique
    Comment

    Written exam in presence / 120 minutes / closed book

  • Assignment
    Valid for the following curricula:
    Additional Courses in Sciences
    Version: ens_compl_sciences
    Paquet indépendant des branches > Initiation courses in Computer Science

    Additional Programme Requirements to the MSc in Bioinformatics and Computational Biology [MA]
    Version: 2022_1/V_01
    Additional Programme Requirements to the MSc Bioinformatics and Computational Biology > Initiation courses in Computer Science

    Additional Programme Requirements to the MSc in Computer Science [MA]
    Version: 2022_1/V_01
    Supplement to the MSc in Computer science > Initiation courses in Computer Science

    Additional Programme Requirements to the MSc in Digital Neuroscience [MA]
    Version: 2023_1/V_01
    Supplement to the MSc in Computer science > Initiation courses in Computer Science

    Additional TDHSE programme in Computer Science
    Version: 2022_1/V_01
    Additional TDHSE Programme Requirements for Computer Science 60 or +30 > Programmes 60 or +30 > Additional Programme Requirements to Computer Science 60 > Additional TDHSE programme for Computer Science 60 (from AS2020 on)

    Ba - Business Informatics - 180 ECTS
    Version: 2020/SA_V02
    3nd year 60 ECTS > 3rd year courses > Cours à choix min. 14 ECTS / Wahlkurse min. 14 ECTS > Cours à choix - Type A / Wahlkurse - Typus A > Systems-oriented programming

    Computer Science 120
    Version: 2022_1/V_01
    BSc in Computer science, Major > Computer Science 1. year (from AS2019 on)

    Computer Science 30
    Version: 2022_1/V_01
    Minor in Computer science 30 > Computer Science Minor 30 and 60 ECTS compulsory (from SA2020 on)

    Computer Science 60
    Version: 2022_1/V_01
    Minor in Computer Science 60 > Computer Science Minor 30 and 60 ECTS compulsory (from SA2020 on)

    Computer Science 50 [BSc/BA SI]
    Version: 2022_1/V_01
    BSc_SI/BA_SI, Computer science 50 ECTS, 1st-3rd years > BSc_SI/BA_SI, Computer Science, 2nd-3rd years, elective courses for 50 ECTS (from AS2020 on)

    Computer Science [3e cycle]
    Version: 2015_1/V_01
    Continuing education > Initiation courses in Computer Science

    Computer Science [POST-DOC]
    Version: 2015_1/V_01
    Continuing education > Initiation courses in Computer Science

    Computer Science [TDHSE] 60
    Version: 2022_1/V_01
    Minor in Computer Science (TDHSE) 60 > Computer Science Minor TDHSE 60 ECTS (from SA2021 on)

    Mathematics 30 for Mathematicians (MATH 30MA)
    Version: 2022_1/V_01
    Mathematics for mathematicians (MATH 30MA), minor 30 (from AS2020 on) > Mathematics, minor MATH 30MA, elective courses (from AS2018 on)

    Mathematics 30 for Physicists (MATH 30PH)
    Version: 2022_1/V_01
    Mathematics for physicists (MATH 30PH), minor 30 (from AS2020 on) > Mathematics, minor MATH 30PH, elective courses (from AS2018 on)

    Pre-Master-Programme to the MSc in Bioinformatics and Computational Biology [PRE-MA]
    Version: 2022_1/V_01
    Prerequisite to the MSc in Bioinformtics and Computational Biology > Initiation courses in Computer Science

    Pre-Master-Programme to the MSc in Computer Science [PRE-MA]
    Version: 2022_1/V_01
    Prerequisite to the MSc in Computer science > Initiation courses in Computer Science

    Pre-Master-Programme to the MSc in Digital Neuroscience [PRE-MA]
    Version: 2023_1/V_01
    Prerequisite to the MSc in Computer science > Initiation courses in Computer Science