Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Wprowadzenie do systemu UNIX
Tok studiów:
2019/2020
Kod:
IINF-1-205-n
Wydział:
Informatyki, Elektroniki i Telekomunikacji
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Informatyka
Semestr:
2
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Niestacjonarne
Strona www:
 
Prowadzący moduł:
dr inż. Straś Robert (stras@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

The aim of the course is to familiarize students with the characteristics and basic mechanisms of the UNIX system, with commands and programming rules in the language of the command interpreter.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Zna i rozumie znaczenie wszystkich pojęć omawianych w module "Wprowadzenie do systemu UNIX". INF1A_W05 Egzamin
M_W002 Zna i rozumie działanie podstawowych poleceń omawianych w module "Wprowadzenie do systemu UNIX". INF1A_W05 Egzamin
M_W003 Ma aktualną wiedzę na temat używania poleceń systemu Unix i programów aplikacyjnych dostępnych w różnych implementacjach. INF1A_W05 Egzamin
Umiejętności: potrafi
M_U001 Może uzyskać informacje o konfiguracji systemu i roli użytkownika w systemie z systemu. INF1A_U07 Egzamin
M_U002 Może używać systemu do kompilowania, instalowania i uruchamiania programu. INF1A_U07 Egzamin
M_U003 Potrafi skonfigurować swoje środowisko pracy, określić wykorzystanie zasobów i wykorzystać zasoby systemu na potrzeby własnych procesów. INF1A_U07 Egzamin
M_U004 Potrafi zaproponować konfiguracje systemu operacyjnego, które efektywnie wykorzystują moc obliczeniową sprzętu i spełniają podstawowe zasady bezpieczeństwa. INF1A_U07 Egzamin
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
32 16 0 16 0 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Zna i rozumie znaczenie wszystkich pojęć omawianych w module "Wprowadzenie do systemu UNIX". + - - - - - - - - - -
M_W002 Zna i rozumie działanie podstawowych poleceń omawianych w module "Wprowadzenie do systemu UNIX". + - - - - - - - - - -
M_W003 Ma aktualną wiedzę na temat używania poleceń systemu Unix i programów aplikacyjnych dostępnych w różnych implementacjach. + - - - - - - - - - -
Umiejętności
M_U001 Może uzyskać informacje o konfiguracji systemu i roli użytkownika w systemie z systemu. - - + - - - - - - - -
M_U002 Może używać systemu do kompilowania, instalowania i uruchamiania programu. - - + - - - - - - - -
M_U003 Potrafi skonfigurować swoje środowisko pracy, określić wykorzystanie zasobów i wykorzystać zasoby systemu na potrzeby własnych procesów. - - + - - - - - - - -
M_U004 Potrafi zaproponować konfiguracje systemu operacyjnego, które efektywnie wykorzystują moc obliczeniową sprzętu i spełniają podstawowe zasady bezpieczeństwa. - - + - - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 150 godz
Punkty ECTS za moduł 5 ECTS
Udział w zajęciach dydaktycznych/praktyka 32 godz
Przygotowanie do zajęć 56 godz
Samodzielne studiowanie tematyki zajęć 60 godz
Egzamin lub kolokwium zaliczeniowe 2 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (16h):
  1. Budowa systemu, podstawowe pojęcia i definicje (2 godz.).

    Definicja systemu operacyjnego. Rola systemu operacyjnego w systemie komputerowym. Informacje ogólne o budowie systemu operacyjnego UNIX. Jądro systemu operacyjnego. Funkcje systemowe, komunikacja ze sprzętem. SystemV, BSD, systemy komercyjne oraz linuksowe.

  2. Użytkownicy i grupy użytkowników w systemie UNIX (2godz.).

    Reprezentacja oraz atrybuty użytkownika w systemie operacyjnym. Podstawowe pliki konfiguracyjne użytkowników w różnych implementacjach systemu. Dodawanie, modyfikowanie wartości atrybutów użytkowników. Idea grup użytkowników. Grupa podstawowa i dodatkowe. Zakładanie, oraz modyfikowanie atrybutów grupy użytkowników. Dodawanie/usuwanie użytkownika do/z grupy. Ograniczanie zasobów systemu komputerowego przyznawanych użytkownikowi. Zasady bezpieczeństwa związane z administrowaniem użytkownikami. Moduł PAM. Usuwanie użytkowników oraz grup użytkowników z systemu.

  3. Podsystem pamięci masowej (4 godz.).

    Definicja i-węzła. Rodzaje oraz atrybuty plików. Modele praw dostępu. Struktury opisujące plik w jądrze systemu operacyjnego. Pojęcie systemu plików. Podział drzewa katalogów na systemy plików. Budowa dyskowych systemów plików na przykładzie systemu plików s5 oraz FFS. Budowa wewnętrzna systemów plików JFS, XFS, ext4 oraz RaiserFS. Zakładanie systemu plików z uwzględnieniem jego przeznaczenia (rozmiar bloku danych, długość listy i-węzłów). Montowanie i odmontowanie systemu plików. Programy narzędziowe do badania spójności wewnętrznej oraz naprawiania systemu plików. System kontyngentów (quota). Wykorzystanie systemów Logical Volume Manager (LVM) oraz GEOM. Wprowadzenie do macierzy dyskowych RAID.

  4. Podsystem zarządzania procesami (4 godz.).

    Pojęcie procesu. Opis struktur definiujących proces w systemie operacyjnym UNIX. Fazy życia procesu. Pojęcie trybu pracy: użytkownika i jądra. Kontekst pracy systemu operacyjnego. Pojęcie priorytetu procesu oraz roli parametru NICE. Algorytmy kolejkowania zadań w SystemieV oraz BSD. Interaktywne uruchamianie procesów. Wykorzystanie demona zegarowego cron dla jednorazowego oraz cyklicznego uruchamiania procesów. Podstawowe mechanizmy komunikacji międzyprocesowej. Metody ograniczania zasobów dostępnych dla procesów.

  5. Interpretery poleceń (2 godz.).

    Klasyfikacja interpreterów poleceń. Fazy działania interpretera poleceń. Znaki specjalne wiersza poleceń i ich znaczenie w różnych rodzinach interpreterów. Podstawowe zmienne specjalne oraz środowiskowe wybranych interpreterów poleceń. Historia wiersza poleceń. Zasady pisania i uruchamiania programów dla interpreterów poleceń. Podstawowe instrukcje: if-then-else, case, switch, do-while, for. Przykładowe skrypty.

  6. Podstawy rodziny protokołów TCP/IP (2 godz).

    Historia sieci w systemach uniksowych. Model ISO-OSI. Rodziny protokołów SNA oraz XNS oraz TCP/IP. Adres fizyczny. Protokół IP w wersji IV oraz VI. Adres IP. Protokoły ARP oraz RARP. Protokół DHCP. Protokoły TCP oraz UDP. Przestrzeń nazw, domena katalogu głównego, domeny najwyższego poziomu. Adres symboliczny. Usługa nazw domenowych. Model klient-serwer. Numer portu (usługi). Podstawy konfigurowania interfejsów sieciowych oraz tablic trasowania w różnych implementacjach systemu. Podstawowe aplikacje sieciowe.

Ćwiczenia laboratoryjne (16h):

  1. Podstawowe polecenia w systemach unikowych. Pliki konfiguracyjne użytkowników i grup użytkowników. Składanie poleceń.
  2. Praca z systemami plików.
  3. Zarządzanie procesami.
  4. Konfiguracja środowiska pracy. Podstawowe zmienne środowiskowe, aliasy, pliki konfiguracyjne.
  5. Programowanie w językach interpreterów poleceń. Realizacja prostych skryptów ułatwiających prace w systemie operacyjnym.
  6. Podstawy konfiguracji sieciowych.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia laboratoryjne: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Sposób obliczania oceny końcowej:

1. Aby uzyskać pozytywną ocenę końcową niezbędne jest uzyskanie pozytywnej oceny z laboratorium oraz egzaminu.
2. Obliczamy średnią arytmetyczną z ocen z zaliczenia laboratorium i egzaminu, uzyskanych we wszystkich terminach, przy czym waga ocen z egzaminu jest dwukrotnie większa niż ocen z laboratorium.
3. Wyznaczmy ocenę końcową na podstawie zależności:
if sr>4.75 then OK:=5.0
else if sr>4.25 then OK:=4.5
else if sr>3.75 then OK:=4.0
else if sr>3.25 then OK:=3.5
else OK:=3

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Umiejętność obsługi komputera, pracującego pod kontrolą dowolnego systemu operacyjnego, w podstawowym zakresie.

Zalecana literatura i pomoce naukowe:

1. Bach M. J., „Budowa systemu operacyjnego UNIX”, WNT, Warszawa, 1993.
2. Nemeth E., Snyder G., Hein T. R., Whaley B., „Unix i Linux. Przewodnik administratora systemów”. Wydanie IV, Helion, Gliwice, 2011.
3. Boryczko K., „Budowa i administracja systemami Unix i Linux. T. 1”, Kraków, 2011.
4. Von Hagen W., „Systemy plików w Linuksie”, Helion, Gliwice, 2003.
5. Arthur L. J., Burns T., “Unix – programowanie w shellu”, Mikom, Warszawa, 2003.

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Łukasz FABER, Krzysztof BORYCZKO, “Portable userspace virtual filesystem switch”, Computer Science, Informatyka, University of Mining and Metallurgy, Kraków ; ISSN 1508-2806. — 2013 vol. 14 no. 3, s. 345–365.

Informacje dodatkowe:

Brak