Schema della sezione

    • Utilizzeremo anche il libro "The Linux Programming Interface: A Linux and UNIX System Programming Handbook" di Michael Kerrisk

      dal libro: 

      definizione operating system

      compiti del kernel: process scheduling, memory management, file system, crezione e terminazione dei processi, accesso ai dispositivi, networking, system calls

      kernel mode e user mode

      isolamento dei processi; memoria virtuale.

      shell, shell scripts

      utenti e gruppi

      superuser

      struttura a cartelle

      tipi di file: file regolari, device, pipes, sockets, cartelle, symbolic links

      definizione di directory (cartella); link: (associazione filename, riferimento a file)

      symbolic link

      proprietà e permessi dei file

      principali system call per file I/O: open, read, write, close, lseek

      file descriptor

      definizione di processo

      organizzazione della memoria di un processo: segmenti text, data, heap, stack

      system call: fork(), execve(), wait()

      process identifier (PID), parent process identifier (PPID)

      terminazione di processo con exit()