Operációs rendszerek vizsga

1998. június 4.

  1. Sorolja fel és röviden jellemezze az operációs rendszerek tipikus szolgáltatásait és fő komponenseit.
    [7 pont]
  2. Sorolja fel az elosztott rendszerek osztályozásának szempontjait és röviden definiálja az osztályba tartozás kritériumait. Milyen előnyökkel járhat elosztott rendszerek használata a hagyományos rendszerekkel szemben?
    [10 pont]
  3. Egy operációs rendszerben a következõ folyamatok találhatók futásra kész állapotban (az érkezési idõ azt az időpillanatot jelenti, amikor a folyamat futásra késszé vált):
  4. folyamat

    érkezési idő

    löketidő

    P1

    0

    3

    P2

    1

    5

    P3

    4

    3

    P4

    6

    2

    P5

    7

    1

    Adja meg, hogy az egyes folyamatok milyen sorrendben futnak le és számolja ki a folyamatok átlagos várakozási idejét az alábbi ütemezési algoritmusok használata esetén :

    1. sorrendi (First Come First Serve, FCFS),
    2. legrövidebb löketidejű (Shortest Job First, SJF),
    3. legrövidebb hátralévő löketidejű (Shortest Remaining Time First, SRTF),
    4. 2 időegységnyi időszeletű körforgó (Round Robin, RR)
      [11 pont]
  1. Definiálja a kiéheztetés (starvation) és a holtpont (deadlock) fogalmát? Mi a különbség és a hasonlóság a két fogalom között? Mutasson tipikus példákat arra, mikor fordulhat elő kiéheztetés ill. holtpont az operációs rendszerekben.
    [12 pont]
  2. Sorolja fel, a program fejlesztés ill. futtatás mely fázisaiban történhet a program memóriacímeinek kötése, vagyis a logikai-fizikai cím megfeleltetés. A felsorolt esetek közül mikor használható dinamikusan linkelhető (szerkeszthető) könyvtár (DLL, Dinamically Linked Library)? Ismertesse a dinamikusan linkelhető könyvtárak működését.
    [11 pont]
  3. Részletesen definiálja folyamatok közötti szinkronizáció lehetséges formáit. Adjon egy-egy példát a szinkronizáció különböző formáinak megvalósítására.
    [9 pont]

  4. Szemaforok felhasználásával írjon olyan programrészleteket, amelyek megvalósítják egy termelő és egy fogyasztó folyamat összehangolását akik egy korlátos hosszúságú (N elemű) osztott elérésű tömb segítségével cserélnek adatelemeket. A termelő folyamat állítja elő az adatelemeket, míg a fogyasztó folyamat dolgozza fel őket.