Sisteme de operare - linux

Cuprins


  1. Interpretorul de comenzi linux si fisierele de comenzi -exemple de scripturi shell
  2. Programare C/C++ sub linux ( compilator gcc si utilitarul make
  3. Exercitii propuse cu procese linux (lista probleme). Secvente de cod cu implementare apeluri sistem pentru procese - exemple
  4. Probleme cu pipe-uri (probleme propuse). Exemple de implemenare - secvente de cod cu system si popen.
  5. Probleme cu blocari de fisiere (lista probleme propuse). Exemple secvente de cod - secvente de cod cu blocari de fisiere
  6. probleme cu semafoare - exemple semafoare

Laborator

  1. Laborator 1 - Comenzi linux de baza
  2. L2
    1. Sa se scrie un script shell care aduna numerele date ca parametrii in linia de comanda.
    2. Sa se scrie un script shell care scrie numerele in ordine descrescatoare incepand de la n dat ca parametru folosind while.
    3. Sa se inverseze cifrele unui numar (254 -> 452).
    4. Scrieti un script care afiseaza data curenta, ora, numele utilizatorului si disrectorul curent.
    5. Scrieti un script care calculeaza suma cifrelor unui numar dat ca parametru.
    6. Scrieti un script care determina daca o comanda contine caracterul "*".
    7. Scrieti un script care afiseaza numerele lui Fibonacci.
    8. Scrieti un script care transforma litere mari in litere mici pentru nume de fisiere primite ca parametru.
    9. B
      1. a) Ce moduri de operare s-au intalnit in evolutia sistemelor de calcul?
        b) Descrieti pe scurt principiul multiprogramarii si motivul introducerii acestuia.
      2. a) Care este deosebirea dintre modul kernel si modul utilizator?
        b) Care dintre urmatoarele operatii sunt permise doar in modul kernel ? (1) mascarea tuturor intreruperilor; (2) citirea ceasului (3) apel de operare kernel (4) fixarea orei sistem (5) translatarea adreselor de memorie
        c) Explicati pe scurt pasii de intrare a unui program in modul kernel
      3. Definitia sistemul de operare contine doau moduri de abordare a acestuia. Care sunt acestea si ce semnificatie au?
      4. Ce moduri de structurare ale sistemlor de operare cunoasteti? Care sunt avantajele si dezavantajele acestora?
      5. De ce interpretorul de comenzi nu este parte componenta a kernelului sistemului de operare dar totusi componenta a sistemului de operare?
      6. Enumerati si descrieti pe scurt spectrul de utilizare actual al sistemelor de operare.
  3. L3
    1. Scrieti un script shell care afiseaza lista utilizatorilor si timpul cat au fost logati (din ultima sesiune de lucru)
    2. Scrieti un script care implementeaza un browser text folosind comenzile wget si links -dump . Utilizatorul are trei optiuni introduce un URL, b pentru back si q pentru quit. Ultimele 10 URL-uri introduse de user sunt stocate intr-un array, de unde utilizatorul poate sa le acceseze folosind functionalitatea back.
    3. Scrieti un script care automatizeaza instalarea unui pachet de pe Internet (trebuie dat numele, descarcat, dezarhivat si compilat). Doar instalarea poate fi intrerupta.
    4. Scrieti un program C care implementeaza comanda kill.
  4. L4
    1. Scrieti un script care pe baze de if then verifica daca scriptul a primit cel putin doi parametrii si afiseaza eroarea corespunzatoare.
    2. Scrieti un script care verifica daca doua stringuri sunt egale.
    3. Determinati maximul a trei numere primite ca parametru.
    4. Determinati suma numerele de la 1 la n cu ajutorul unuic ciclu while si cu ajutorul unui ciclu for.
    5. Scrieti un script care cere luna si anul si afiseaza zilele din luna respectiva.
    6. Scrieti un script care determina daca o comanda contine caracterul "*".
    7. Scrieti un script care numara cate fisiere si cate subdirectoare sunt intr-un director (recursiv).
    8. Scrieti un script KornShell care foloseste comanda de selectare pentru a afisa o lista de masini si ca raspuns va propune o culoare pentru masina aleasa.
  5. Laborator 5 - Sisteme de operare - Procese/Planificarea proceselor
  6. Laborator 6 - Sisteme de operare - Gestiunea memoriei
  7. Laborator 7 - Sisteme de operare - Alocarea memoriei

Nota examen

  • Nota finala se compune din
    1. Nota examen scris (50%)
    2. Nota laborator (50%)
      • - nota teme de laborator (33%)
      • - nota program C + referat corespunzator (la alegere dintre: procese, gestiunea memeoriei, fisiere, pipe-uri) (33%)
      • - nota scenariu de operare windows (film) (33%)
    3. Se acorda 1 punct bonus la nota finala pentru configurarea unui serviciu linux (ldap, dovecot, samba, exim4, etc.)

Observatii

  1. Unelte recomdate pentru realizare filme:
    1. ShareX
      1. permite realizarea de capturi de ecran si adnotarea imaginilor obtinute
      2. permite inregistrarea ca film a zonelor de ecran selectate
  2. Orice tip de documentatie se va tehnoredacta in latex folosind MikTex si TeXnicCenter plecand de la acest sablon .
  3. Descarcare exemplu de prezentare latex ce foloseste pachetul foils .
  4. Detalii prezentare/film:
    1. rezolutie 800x600 - deoarece filmul este destinat utilizarii/vizualizarii cu ajutorul browserului, acesta trebuie sa incapa convenabil intr-o fereastra fara ca utilizatorul sa fie nevoit sa realizeze ajustari de rezolutie sau redimensionari pentru a-l urmari
    2. pe desktop nu vor fi schortcut-uri inutile - la realizarea filmului se curata ecranul si se seteaza un fundal implicit (albastru) pentru a nu distrage atentia de la continut (scenariu de utilizare utilitar prezentat)
    3. contine slide de titlu - primul slide contine un titlu si o descriere a continutului filmului.
    4. cel putin o nota pe fiecare slide - pe fiecare cadru din film se va scrie atat cum fac? cat si ce fac?
    5. fara sonor
    6. atentie la miscarile de mouse - daca nu sunt consistente sunt eliminate din film
    7. ca si regula de stil trebuie avut in vedere ca un astfel de film se adreseaza atat persoanelor cu pregatire informatica cat si celor fara pregatire informatica - orice persoana interesata trebuie sa inteleaga ce face si cum reproduce ceea ce se prezinta in film.
  5. Pentru fiecare tema de laborator se primeste o nota de la 1 la 10.
  6. Se penalizeaza orice teme care nu respecta indicatiile de la laborator si nu implementeaza elementele prezentate in laboratorul respectiv.