Procesy

Procesy #

Zakres materiału #

  • Koncepcja procesu. Modele procesu: UNIX (POSIX), MSWin (Win32).
  • Graf stanów procesu
  • Blok Kontrolny Procesu. Kontekst procesu. Przełączanie CPU pomiędzy procesami.
  • Kolejki planowania procesów. Planiści: krótkoterminowy, długoterminowy, średnioterminowy.
  • Tworzenie procesów. Modele: POSIX, Win32.
  • Kończenie procesów. POSIX: rola wait(), sierota, zombie.
  • Procesy współpracujące. Modele komunikacji międzyprocesowej. Rola synchronizacji procesów.
  • Środowisko wykonania procesu POSIX: zmienne środowiskowe, 3 początkowe strumienie (stdin, stdout, stderr). Moduł startowy (crt0)
  • Cykl życia procesu POSIX
  • Dziedziczenie przy wywołaniu funkcji systemowych fork i exec.
  • Funkcje standardowej biblioteki języka C opakowujące wywołania funkcji systemowej exec.
  • Identyfikatory związane z procesem: PID, GID, real/effective ID. setuid/setgid.
  • Grupy procesów.

Materiały #

  1. Podręcznik: rozdz. 4 (Procesy).
  2. Prezentacja wykładowa (PDF)
  3. Programy wykładowe
  4. Rozdział 26 dokumentacji “GNU C library”: Processes
  5. Stare Slajdy: Procesy.pdf, Procesy_POSIX.pdf