Contenu connexe Similaire à Piz07 12 (20) Piz07 121. LOGO
Systemy operacyjne
Sposoby przetwarzania zadan.
Elementy systemu operacyjnego.
Uruchamianie systemu.
Historia rozwoju systemów operacyjnych.
Historia systemu Windows
Pliki i ich parametry.
Podstawowe operacje plikowe.
Drzewa katalogów.
UNIX i LUNUX.
2. © 2013 R. Robert Gajewski2/88
Co to jest system operacyjny
… i po co?
System operacyjny jest podstawowym
pomostem między użytkownikiem
komputera a językiem wewnętrznym
maszyny, czyli innymi słowy samym
komputerem.
System operacyjny jest niczym innym jak
programem napisanym w języku
wewnętrznym lub innym zbliżonym do
niego języku programowania.
3. © 2013 R. Robert Gajewski3/88
Zasadnicza rola sys. op.
Zasadnicza rola systemu operacyjnego
polega przede wszystkim na:
sterowaniu pracą komputera,
sterowaniu urządzeniami peryferyjnymi,
obsłudze zbiorów dyskowych.
Z tak określonych zadań systemu
operacyjnego bierze się popularne
powiedzenie:
komputer pracuje pod nadzorem
systemu operacyjnego
4. © 2013 R. Robert Gajewski4/88
Lata ’40 i ’50…
Systemy jednoprocesowe
Wykonanie każdego programu (job) było traktowane
jako osobne zadanie
Komputer w danej chwili był w pełni pod kontrolą
jednego użytkownika i realizował jeden program
Wtedy rozpoczęły swoja „karierę” systemy
operacyjne
Przetwarzanie wsadowe – (batch
processing)
Zebranie zadań w postaci wsadu
Zadania w pamięci masowej oczekiwały w kolejce
zadań (job queue)
5. © 2013 R. Robert Gajewski5/88
Kolejkowanie
Kolejka (queue) to taki sposób
przechowywania informacji, aby obiekty
(zadania, programy) były uporządkowane
w kolejności przychodzenia
Pierwszy na wejściu, pierwszy na wyjściu (First In
First Out, FIFO)
Obiekty wyjmuje się w kolejności ich pojawiania się
Istnieje możliwość przypisana zadaniom priorytetów
Język sterowania zadaniami (Job Control
Language, JCL)
Zbiór instrukcji niezbędnych do wykonania danego
zadania
6. © 2013 R. Robert Gajewski6/88
Wady przetwarzania wsadowego
Użytkownik nie ma szansy na interakcję z
programem po dostarczeniu do kolejki
OK. dla przetwarzania płac
Złe dla rezerwacji miejsc
Przetwarzanie interakcyjne czyli
konwersacyjne (interactive processing)
Koordynacja między maszyną a jej
środowiskiem pracy nazywa się
przetwarzaniem w czasie rzeczywistym
(real time processing)
7. © 2013 R. Robert Gajewski7/88
Interakcja wielu zadań
Problemem jest interaktywna obsługa
wielu zadań w czasie rzeczywistym
Rozwiązaniem jest podział czasu (time sharing) –
system, w którym na przemian wykonywane są
fragmenty różnych programów
Czas dzieli się na kwanty czasu
Każde zadanie wykonywane jest przez jeden kwant
Stosując szybkie tasowanie zadań uzyskuje się
złudzenie jednoczesnego wykonywania zadań
Takich użytkowników mogło być do 30
8. © 2013 R. Robert Gajewski8/88
Wiele zadań… i użytkowników…
Systemy wielozadaniowe (multitasking)
sprawiają jednoczesne wykonywanie
wielu zadań
Systemy z wieloma użytkownikami
(multiuser) pozwalają na jednoczesną
pracę wielu użytkowników
Podział czasu poprawia całościowe wykorzystanie
maszyny, chociaż przełączanie kosztuje sporo czasu
Bez podziału czasu czas jest marnowany jeszcze
bardziej
System sekwencyjny to marnowanie czasu…
9. © 2013 R. Robert Gajewski9/88
Systemy wieloprocesorowe
Koncepcja jednego wielkiego komputera
obsługującego wielu użytkowników
ustąpiła miejsca systemom
komputerowym połączonym w sieć
Użytkownicy współdzielą zasoby
Oprogramowanie
Drukarki
Urządzenia peryferyjne
Urządzenia do przechowywania danych i informacji
…
10. © 2013 R. Robert Gajewski10/88
Problemy…
Problemy związane z koordynacją
czynności w architekturze sieciowej są
podobne do tych, które napotykają zwykłe
systemy operacyjne
Oprogramowanie kontrolujące sieć to…
sieciowy system operacyjny
Zadania sieciowego systemu
operacyjnego
Koordynacja współzawodnictwa między czynnościami
Nadzorowanie przydziału czynności do procesorów
Równoważenie obciążenia (load balancing)
Skalowanie (podział na procesory zależny od ich
liczby)
11. © 2013 R. Robert Gajewski11/88
Klasyfikacja oprogramowania
Oprogramowanie
Aplikacja System
Narzędzie System operacyjny
Interpreter Jądro
12. © 2013 R. Robert Gajewski12/88
Przegląd oprogramowania
Programy aplikacyjne (application
software)
Programy wykonujące użyteczne czynności
Wykorzystują de facto komputery
Programy systemowe (system software)
Realizuje zadania, które są wspólne dla wszystkich
systemów komputerowych
Oprogramowanie narzędziowe (utility
software)
Programy, których działanie jest istotne dla
funkcjonowania systemu komputerowego
13. © 2013 R. Robert Gajewski13/88
Elementy systemu operacyjnego
Fragment systemu operacyjnego, który
stanowi interfejs z użytkownikiem to
interpreter poleceń, czyli powłoka
systemu operacyjnego (shell)
Jego zadaniem jest umożliwienie komunikacji między
użytkownikiem a maszyną
Nowoczesne interpretery realizują to za
pomocą graficznego interfejsu
użytkownika (Graphic User Interface,
GUI)
Obiekty, którymi manipuluje się na ekranie są
reprezentowane przez ikony
14. © 2013 R. Robert Gajewski14/88
Interpreter graficzny
Jego głównym elementem jest zarządca
okien (window manager)
Przydziela on fragmenty ekranu i przechowuje
informacje, która aplikacja związana jest z oknem
Gdy aplikacja chce wyświetlić komunikat w oknie -
informowany jest o tym zarządca
Gdy naciśniemy myszkę zarządca sprawdza położenie
kursora i zawiadamia odpowiednią aplikację
15. © 2013 R. Robert Gajewski15/88
Jądro
Część wewnętrzna systemu operacyjnego
jest nazywana jądrem (kernel)
Jednym z elementów jest zarządca plików (file
manager)
Pliki gromadzone są w pakietach zwanych
katalogami (directory) lub folderami (folders)
Ta struktura może być hierarchiczna
Zarządca plików nadzoruje operacje na plikach
Podstawa to udostępnienie pliku do otwarcia –
informację o tym przechowuje się w deskryptorze
pliku (file descriptor)
Operacje na pliku dokonuje się zgodnie z
deskryptorem
16. © 2013 R. Robert Gajewski16/88
Obsługa urządzeń
Drugi element jądra to zestaw programów
obsługi urządzeń (device driver)
Program komunikuje się ze sterownikami
Każdy taki program jest zaprojektowany dla danego
typu urządzeń
Dzięki temu można uniezależnić obsługę urządzeń od
szczegółów ich budowy
System operacyjny można uniezależnić od
konkretnych urządzeń peryferyjnych
Ich obsługa będzie zależeć od sterowników
17. © 2013 R. Robert Gajewski17/88
Zarządzanie pamięcią
Kolejny element jądra to zarządca
pamięcią (memory manager)
Jego zadanie to koordynacja wykorzystania pamięci
głównej
To łatwe zadanie, gdy jest realizowany tylko jeden
program
Jeśli wymagana pamięć jest większa od dostępnej
tworzona jest pamięć wirtualna (virtual memory)
Moduł szeregujący lub planista
(scheduler)
Moduł ekspediujący lub dyspozytor
(dispatcher)
18. © 2013 R. Robert Gajewski18/88
Uruchamianie systemu
Jak uruchamia się system operacyjny?
Dokonuje się to za pomocą procedury ładowania
początkowego lub rozruchowej (boot strapping)
Jednostkę centralną konstruuje się w taki sposób, że
po włączeniu do licznika rozkazów ładuje się
określoną wielkość
Ta porcja zapisana jest w pamięci stałej ROM
Proste urządzenia sterowane mikroprocesorami mają
w zasadzie jedynie pamięć ROM
Wykonywany jest bowiem tylko jeden program
19. © 2013 R. Robert Gajewski19/88
Prawdziwe komputery…
W ‘prawdziwych’ komputerach jedynie
niewielka część pamięci to ROM
Mały program, który jest tam zapisany na
stałe to program ładujący lub rozruchowy
(bootstrap)
Wykonuje się on automatycznie po włączeniu
komputera
Jednostka centralna przenosi dane z określonego
miejsca pamięci masowej (dysku) do pamięci
operacyjnej RAM
Po tej operacji kontrolę przejmuje system operacyjny
Najczęściej zachodzi próba czytania systemu z…
dyskietki
Można sobie wyobrazić system ładowany z CD / DVD
20. © 2013 R. Robert Gajewski20/88
Proces
Rozróżnienie pojęciowe programu i
czynności polegającej na wykonywaniu
programu
Program to statyczny ciąg rozkazów
Wykonywanie programu to czynność dynamiczna
Ta czynność nosi nazwę procesu (process)
Proces zawiera informacje o bieżącym stanie
wykonania zwane stanem procesu (process state)
Stan procesu to jakby fotografia systemu
komputerowego w danej chwili
21. © 2013 R. Robert Gajewski21/88
Różnice proces - program
Jeden program może być związany z
wieloma procesami
Dwóch użytkowników może w tym samym czasie
edytować dwa różne dokumenty wykorzystując ten
sam program
System operacyjny będzie utrzymywał jedną kopię
programu, z której będą korzystać użytkownicy w
swoich kwantach czasu
Koordynacja działania procesów to
zadanie systemu operacyjnego
Komunikacja między procesami to
komunikacja międzyprocesowa
(interprocess communication)
22. © 2013 R. Robert Gajewski22/88
Administrowanie procesami
Koordynację procesów wykonują:
Moduł szeregujący (planista)
Moduł ekspediujący (dyspozytor)
Moduł szeregujący przechowuje w
pamięci tablice procesów (process table) z
informacjami o wszystkich procesach
Procesy mogą być w dwóch stanach
Proces jest gotowy (ready) jeśli jest w stanie, który
umożliwia jego wykonanie
Proces jest oczekujący (waiting) jeśli jego
wykonanie odłożono na później
23. © 2013 R. Robert Gajewski23/88
Dyspozytor
Dyspozytor to część jądra, która dba o to,
by były wykonywane odpowiednie
procesy
Wykonanie następuje w kwantach (quantum, time
slice)
Procedura zmiany aktualnie wykonywanych procesów
to przełączanie procesów (process switch)
Po wykonaniu kwantu system generuje
sygnał zwany przerwaniem (interrupt)
Jednostka centralna przerywa działanie
Wtedy uruchamia się program obsługi przerwań
(interrupt handler)
Dyspozytor znowu przejmuje kontrolę…
24. © 2013 R. Robert Gajewski24/88
Początki CP/M
Zdecydowanym standardem światowym
wśród komputerów 8_bitowych był i jest
system operacyjny CP/M (Control
Program for Microprocessors) opracowany
w 1973 przez firmę Intel.
Może on współpracować z pamięcią RAM do 16kB!!!
Łatwy do zaadaptowania dla wielu typów i
konfiguracji mikrokomputerów dzięki
modułowi BIOS (Basic Input/Output
System). Składa się z 3 grup programów:
startu i wznowienia działania (restartu) systemu,
transmisji pojedynczego znaku,
wejścia i wyjścia dyskowego.
25. © 2013 R. Robert Gajewski25/88
Miłe złego początki…
CCP (Console Command Processing)
zapewnia łączność operatora z systemem
operacyjnym. Umożliwia on czytanie,
interpretację i wykonywanie dyrektyw
systemu oraz ładowanie i wykonywanie
programów użytkowych.
W systemie CP/M wyróżnia się dwa typy
dyrektyw:
rezydentne, znajdujące się w rezydentnej części
systemu operacyjnego, wykonywane bez odwołania
się do dysku,
nierezydentne, wykonywanie których wymaga
odwołania się do dyskietki.
26. © 2013 R. Robert Gajewski26/88
Wzorzec DOS’u
Sterowanie plikami jest niezależne od
fizycznych urządzeń wejścia/wyjścia i jest
zgrupowane w BDOS (Basic Disc
Operating System) umożliwiającym
zarządzanie zasobami dyskowymi poprzez
dynamiczne rozmieszczenie plików i
organizację dostępu do nich.
Pamięć operacyjna RAM podzielona jest
na następujące obszary
obszar podstawowego systemy wejścia/wyjścia BIOS,
obszar zajęty przez podstawowy system dyskowy
BDOS,
obszar przetwarzania dyrektyw operatora CCP,
obszar TPA (Transient Program Area) dla programów.
27. © 2013 R. Robert Gajewski27/88
Projekt DOS’u
CP/M stanowił wzorzec dla systemu DOS.
DOS został zaprojektowany do prostej i
podstawowej obsługi mikrokomputera z
jednym miejscem pracy, na którym w
danej chwili pracuje zawsze jeden
program.
program ten jest przyporządkowany jednemu
użytkownikowi (single user), który
przetwarza zawsze jedno zadanie (single task).
28. © 2013 R. Robert Gajewski28/88
Struktura DOS’u
DOS nieco rozrzutnie udostępnia całe
zasoby mikrokomputera jednemu
użytkownikowi, ale dzięki temu ma prosta
i nieskomplikowaną budowę.
Do wprowadzania poleceń służy prosty system
obsługi (shell).
Niektórzy twierdzą, że DOS nie jest „prawdziwym”
systemem operacyjnym tylko systemem ładowania i
uruchamiania programów.
Według nich system operacyjny zaczyna się tam,
gdzie pojawia się „walka” procesów o zasoby.
29. © 2013 R. Robert Gajewski29/88
Proces i środowisko
Proces jest obiektem dynamicznym;
składa się z:
programu, określającego ciąg wykonywanych
instrukcji
otoczenia, zbioru obiektów (zasobów) dostępnych dla
procesu zarówno fizycznie (PAO) jak i logicznie (pliki,
urządzenia).
Środowisko to część otoczenia, zbiór
symboli i przypisanych im tekstów,
którymi są najczęściej nazwy plików i
katalogów.
W systemie DOS w każdej chwili aktywny
jest dokładnie tylko jeden proces
zabiegający o czas i zasoby procesora.
30. © 2013 R. Robert Gajewski30/88
Środowisko DOS’u
DOS musi pracować na sprzęcie
wyposażonym w procesor Intela 80*86 o
podobnej do wzorcowej architekturze.
Istniejące rozwiązania tego problemu to sprzętowe
bądź programowe emulatory symulujące architekturę
i środowisko IBM PC.
Siłą DOS’u jest olbrzymia ilość
oprogramowania.
31. © 2013 R. Robert Gajewski31/88
Części składowe DOS
W publikacjach firmy Microsoft i IBM
można znaleźć podział systemu
operacyjnego MS DOS na następujące
części:
BIOS,
rekord ładujący,
system właściwy,
procesor poleceń (polecenia wewnętrzne i
zewnętrzne)
BIOS, czyli Basic Input Output System
jest to podstawowy system komunikacji i
obsługi wejść i wyjść.
32. © 2013 R. Robert Gajewski32/88
POST
Jest to program zapisany w pamięci ROM i
dostarczony razem z komputerem przez
producenta.
Zawiera on w sobie procedury obsługi
standardowych urządzeń wejścia i
wyjścia, jak np. monitora.
Najważniejszymi częściami BIOS'u są
dwie procedury:
procedura POST,
procedura ładowania
POST oznacza Power On Self Test. Jest to
procedura testująca procesor centralny,
pamięć RAM, sterowniki monitora,
klawiatury, stacji miękkich dysków itp.
33. © 2013 R. Robert Gajewski33/88
Ładowanie
W następnej kolejności wykonywana jest
procedura startująca ładowanie.
Sterowanie przekazywane jest do rekordu
ładującego.
Umożliwia to wprowadzenie pamięci tej
części systemu operacyjnego, która czuwa
nad dalszym procesem jego wczytywania.
Rekord ładujący występuje prawie we
wszystkich komputerach wyposażonych w
dyski i zawiera on minimalna ilość kodu
programowego niezbędnego do wczytania
i wystartowania systemu operacyjnego.
Nazywany jest on często bootstrap loader lub boot.
34. © 2013 R. Robert Gajewski34/88
Rekord ładujący
W systemie DOS rekord ładujący zajmuje
zawsze pierwszy sektor na dysku - sektor
pierwszy na ścieżce zerowej.
Za każdym razem po wystartowaniu
komputera procedura startująca
znajdująca się w BIOS’ie wczytuje
pierwszy sektor z napędu A:, B: lub C:
Wielkość rekordu ładującego odpowiada
jednemu sektorowi na dysku (512
bajtów).
Ze względu na ograniczoną wielkość
program ładujący nie może być
skomplikowany.
35. © 2013 R. Robert Gajewski35/88
OS/2 - podstawy
OS/2 (Operating System 2) przeznaczony
był przede wszystkim dla nowej serii
mikrokomputerów PS/2 (Personal System
2) firmy IBM.
Najważniejsze cechy to:
możliwość wykonywania jednocześnie wielu aplikacji,
zgodność ze standardowymi aplikacjami DOS’u.
Oprócz możliwości dzielenia czasu system
oferuje możliwość pracy równoległej
przez mechanizm wątków (threat).
36. © 2013 R. Robert Gajewski36/88
OS/2 - wieloprogramowość
OS/2 - równoczesne uruchamianie wielu
programów.
Zadanie podzielone na podzadania - procesy
(process, task).
Zegar systemu przerywa w jednakowych odcinkach
czasu działanie CPU i oblicza nowe priorytety tak, by
wznowione zostało przetwarzanie następnego procesu
z listy procesów oczekujących.
Każdy proces otrzymuje jednostkę czasu CPU, tylko
wtedy wykonuje się.
37. © 2013 R. Robert Gajewski37/88
OS/2 - komunikacja
OS/2 jest znacznie lepiej przygotowany
do komunikacji między komputerami niż
DOS. Zadanie to realizuje podsystem LAN-
Manager (Local Area Network).
Niestety nie jest w nim zapewniona
przezroczystość sieci ani bezpieczeństwo
danych.
38. © 2013 R. Robert Gajewski38/88
OS/2 - pliki
System organizacji plików HPFS (High
Performance File System) przypominający
system plików UNIX’a oznacza się dużą
szybkością - zastąpił znany z DOS’u FAT.
Komunikację z użytkownikiem zapewnia
podsystem PM (Presentation Manager),
standardowa graficzna platforma
użytkownika.
Pracę z systemem ułatwia podobny do
hipertekstu system podpowiedzi IPF
(Information Prresentation Facility).
39. © 2013 R. Robert Gajewski39/88
UNIX (Linux)
UNIX (Linux) jest systemem
operacyjnym:
wielodostępnym (Multi User)
wielozadaniowym (Multi Tasking)
Na tej samej maszynie, w tym samym
czasie może pracować wielu
użytkowników dzieląc zasoby komputera.
Daje to obniżenie kosztów eksploatacji i
optymalne wykorzystanie.
40. © 2013 R. Robert Gajewski40/88
Windows 1.0 / 2.0
Zapowiadany na 1983 rok system pojawił
się w listopadzie 1985 w wersji 1.0, a w
grudniu 1989 w wersji 2.0.
Okna miały tę sama wielkość i nie mogły
na siebie zachodzić.
W wersji 2.1 dodano opcję dynamicznej
wymiany danych (Dynamic Data
Exchange) – DDE
41. © 2013 R. Robert Gajewski41/88
Windows 3.0 / 3.1
Windows 3.0
System narodził się w maju 1990.
Usprawniono mechanizmy posługiwania się oknami.
Praca z plikami odbywa się w sposób graficzny.
System potrafi współpracować z siecią.
Windows 3.1
Narodziny w kwietniu 1992.
Poprawiono czcionki – wprowadzenie czcionek typu
True Type.
Dodano obsługę dźwięków.
Udoskonalono i zwiększono wydajność Menedżera
Plików.
42. © 2013 R. Robert Gajewski42/88
Windows 3.11 kontra NT
Windows 3.11
Windows for Workgroups narodził się w 1992 roku
System do pracy grupowej w sieci.
Możliwość korzystania z zasobów sieci – drukarek itp.
System poczty elektronicznej oraz terminarza
Windows NT
Narodziny w 1993 - New Technology?
Windows NT jest już systemem operacyjnym.
Pierwsze wersje NT były podobne do
Windows 3.1.
Windows NT Workstation, Windows NT Server
43. © 2013 R. Robert Gajewski43/88
Windows 95 / 98
Windows 95
Urodziny 24 sierpnia 1995 r.
NT był zbyt drogi, 3.1 zbyt stary...
Jest już systemem operacyjnym.
Całkowita rewolucja w systemie okien.
Możliwość stosowania „długich nazw”.
Windows 98
Urodziny – połowa 1998 roku.
Jest to w zasadzie w pełni zaktualizowana wersja
Win’95.
Eskalacja metod internetowych.
Integracja z Internetem.
44. © 2013 R. Robert Gajewski44/88
Dziś i jutro…
Windows 2000
Kontynuacja rodziny NT
Windows Millenium
Kontynuacja rodziny ’95 i ’98
Windows XP – zapowiedziana unifikacja
Vista, Windows 7 i co dalej?
Windows 8, tablety…
45. © 2013 R. Robert Gajewski45/88
Trzy rodziny
Bazująca na MS-DOSi 9x
Od 1.0 do 3.x, 95, 98, ME
Bazująca na jądrze NT
3.1, 3.5, 4.0, 2000, XP
Vista, 7
Rodzina serwerowa
2003, Home Server, 2008, 2011
46. © 2013 R. Robert Gajewski46/88
Windows CE, 8?
Przypomina wyglądem Win 95 ale działa
jedynie na komputerach typu palmtop.
Sterowanie odbywa się nie za pomocą
myszy, ale plastikowego pióra którym
dotyka się bezpośrednio ikon na ekranie.
Istnieje możliwość wymiany danych z
komputerami stacjonarnymi
47. © 2013 R. Robert Gajewski47/88
Po co i dlaczego?
Istnieje niebezpieczeństwo utraty
zawartości pamięci RAM po wyłączeniu
komputera lub po utracie zasilania.
Pamięć ta bowiem działa tylko wtedy, gdy
komputer jest zasilany.
Z tego powodu istnieją pamięci
zewnętrzne:
Inny powód ma naturę ekonomiczna.
Jednostka takiej pamięci jest tańsza!
48. © 2013 R. Robert Gajewski48/88
Pamięci zewnętrzne
Dyski (twarde) (hard disks)
Dyski elastyczne (floppy disks),
Stacje CD ROM i DVD
Taśmy (tapes) współpracujące z
magnetofonem (pierwsze komputery PC),
Taśmy współpracujących ze streamer'em
Pamięci flash
49. © 2013 R. Robert Gajewski49/88
Dyski…
Urządzeniem zapewniającym
przechowywanie informacji w sposób
efektywny jest tzw. dysk.
Dysk jest krążkiem o kształcie
gramofonowej płyty pokrytym z obu stron
cienką warstwą magnetyczną, podobnie
jak taśma magnetofonowa.
W terminologii dotyczącej pamięci
dyskowych istnieją niejednoznaczności.
50. © 2013 R. Robert Gajewski50/88
Dyski…
W terminologii dotyczącej pamięci
dyskowych istnieją niejednoznaczności.
Dysk oznacza w zasadzie sam nośnik informacji.
Potocznie słowem tym określany jest cały mechanizm
służący do zapisu i odczytu, czyli stacja dysków
zwana także napędem dysku.
Dwa rodzaje stacji dysków:
stacje dysków elastycznych, miękkich (floppy
disc drive),
stacje dysków sztywnych, stałych (hard disc
drive).
51. © 2013 R. Robert Gajewski51/88
Sposób zapisu: ścieżki
Informacje zapisywane są na (dysku)
dyskietce na koncentrycznie
rozmieszczonych okręgach (ścieżkach)
Dla zapewnienia lepszej organizacji
zapisu każda ścieżka podzielona jest na
sektory, wycinki ścieżki ograniczone
dwoma promieniami, z których każdy ma
swój unikatowy "numer".
52. © 2013 R. Robert Gajewski52/88
Sposób zapisu: sektory
Sektor (ang. sector) to najmniejszy ciągły
obszar na dysku lub dyskietce, oznaczony
podczas formatowania niskopoziomowego
i przechowujący dane komputerowe.
W systemach zgodnych z IBM PC sektor
zawiera zwykle 512 bajtów
Działaniem napędu kieruje kontroler dysku.
Najmniejszą jednostką zapisu i odczytu jest jeden
sektor
53. © 2013 R. Robert Gajewski53/88
Sposób zapisu: klaster
Klaster (ang. cluster) lub jednostka
alokacji pliku to niepodzielna jednostka
przydziału na dysku twardym komputera
lub dyskietki, w postaci jednego lub kilku
sektorów tworzących jedną całość.
W przypadku gdy plik jest większy od zaplanowanej
wielkości jednego klastra, to zostaje zapisany w kilku
klastrach, tworzących tzw. łańcuch
54. © 2013 R. Robert Gajewski54/88
Tak to wygląda…
55. © 2013 R. Robert Gajewski55/88
FAT
FAT (File Allocation Table), tablica
rozmieszczenia plików to struktura, w
której system operacyjny przechowuje
informacje o położeniu plików na dysku, a
konkretnie na jego partycji
System FAT stosowany jest głównie w DOS’ie i ma
stosunkowo małe możliwości konfiguracyjne mimo
wprowadzania jego rozbudowanych wersji takich
56. © 2013 R. Robert Gajewski56/88
NTFS
NTFS (ang. New Technology File System)
to opracowany przez firmę Microsoft
system alokacji plików, zastosowany w
systemie operacyjnym Windows NT
NTFS w odróżnieniu od bliźniaczych systemów FAT 16
i 32, jest znacznie szybszy, bezpieczniejszy i bardziej
wydajny.
Rozbudowane atrybuty dla plików i folderów
umożliwiają określanie praw dostępu dla
poszczególnych użytkowników
57. © 2013 R. Robert Gajewski57/88
Dyskietki…
Podobieństwa dysków i dyskietek…
Podstawowe różnice między dyskiem stałym i
elastycznym dotyczą ich konstrukcji.
Dysk elastyczny się "kręcić" dopiero w chwili gdy
chcemy dokonać zapisu bądź odczytu.
Dysk stały "kręci się" zawsze.
Zasady zapisu i odczytu i rozmieszczenia plików są
takie same
58. © 2013 R. Robert Gajewski58/88
BHP dyskietek i nie tylko…
Nie dotykaj służących do zapisu
powierzchni magnetycznych widocznych
przez otwory w zabezpieczającej je
plastykowej kopercie.
Nie łam i nie zginaj dyskietki i krążka CD.
Przechowuj dyskietki w chłodnym,
suchym i czystym miejscu.
Przechowuj dyskietki i krążki CD w
pozycji pionowej.
….
59. © 2013 R. Robert Gajewski59/88
Podstawowe funkcje
Zarządzanie procesami i pamięcią
System plików to logiczna hierarchia
danych zdefiniowana niezależnie od
fizycznych parametrów urządzenia na
którym się ona znajduje.
Podstawowe logiczne jednostki magazynowania to
plik i katalog (w środowisku Windows mówimy
często o folderach).
60. © 2013 R. Robert Gajewski60/88
System plików
Każdy z plików to ciąg bajtów, którego
znaczenie określa jego twórca – człowiek
bądź program komputerowy.
Aby ułatwić zarządzanie plikami grupuje
się je w katalogi, które tworzą
hierarchiczną strukturę.
System plików można porównać z
biblioteką
61. © 2013 R. Robert Gajewski61/88
Informacje o pliku
Nazwa pliku ma jednoznacznie
identyfikować plik w danym katalogu.
W konkretnym katalogu nie mogą istnieć dwa pliki o
tej samej nazwie, nawet jeśli maja różną zawartość
W różnych katalogach mogą oczywiście istnieć pliki o
takich samych nazwach.
Typ pliku to informacja dla systemu
operacyjnego bądź użytkownika pliku
dotycząca sposobu interpretacji
zawartości pliku.
62. © 2013 R. Robert Gajewski62/88
Informacje o pliku
Lokalizacja pliku określa urządzenie (np.
dysk, pamięć flash) i miejsce pliku w
drzewie katalogów – jak jest umieszczone
na tym urządzeniu.
Rozmiar pliku to jego wielkość wyrażona
w bajtach lub wielkościach pochodnych.
Atrybuty pliku to dodatkowe informacje o
pliku.
Różnią się one zdecydowanie w zależności od
systemu operacyjnego.
63. © 2013 R. Robert Gajewski63/88
Atrybuty…
W systemie DOS, OS/2 i Microsoft
Windows istnieją cztery atrybuty pliku:
r – Read-only, plik tylko do odczytu,
a – Archive, plik archiwalny,
s – System, plik systemowy,
h – Hidden, plik ukryty.
64. © 2013 R. Robert Gajewski64/88
Podstawowe operacje plikowe
Istotnym elementem systemu plików są
operacje, które możemy wykonywać na
plikach.
utwórz plik,
skasuj plik,
otwórz plik,
zamknij plik,
przeczytaj dane z pliku,
zapisz dane do pliku,
zmień położenie wskaźnika w pliku,
dopisz dane na końcu pliku,
skasuj zawartość pliku,
zmień nazwę pliku,
skopiuj plik.
65. © 2013 R. Robert Gajewski65/88
Drzewa katalogów
Katalogi i pliki mogą być umieszczone w
innym katalogu.
Katalog, w którym są inne katalogi
określany jest mianem nadrzędnego
(parent directory).
Katalogi wewnątrz wybranego katalogu to
podkatalogi (subdirectories).
Dlatego też system katalogów jest określany mianem
drzewa katalogów (directory tree).
Katalog najwyższego poziomu określany jest czasami
mianem korzenia (root directory).
66. © 2013 R. Robert Gajewski66/88
Drzewo – Linux, Windows
67. © 2013 R. Robert Gajewski67/88
Katalog roboczy
Jeden z katalogów jest zawsze określany
mianem bieżącego (roboczego, working
directory).
Z punktu widzenia systemu operacyjnego
i oprogramowania istotna jest
umiejętność lokalizacji położenia pliku w
drzewie katalogów.
Umożliwia to podanie ścieżki dostępu (path name).
68. © 2013 R. Robert Gajewski68/88
Ścieżka
Istnieją dwa sposoby podawania ścieżki
dostępu, czyli lokalizacji pliku na dysku.
Ścieżka absolutna (absolute path) zaczyna się
zawsze od korzenia, a następnie określa kolejne
nazwy katalogów i podkatalogów.
Ścieżka względna (relative path) zawsze
rozpoczyna się od bieżącego katalogu.
Pewne podobieństwo do adresowania
względnego i bezwzględnego
69. © 2013 R. Robert Gajewski69/88
UNIX - początki
Od roku 1969 w laboratoriach AT&T Bell
Labs rozwijany był system operacyjny
UNIX.
Ciekawa jest historia jego nazwy.
W latach ’60 ubiegłego wieku na MIT rozwijany był
system Multics (MULTiplexing Information and
Computer Services).
W roku 1970 Peter Neuman nadał projektowi nazwę
UNICS (UNiplexed Information and Computing
Service) – system operacyjny został ostatecznie
nazwany UNIX.
70. © 2013 R. Robert Gajewski70/88
Twórcy UNIX’a
Twórcami tego systemu byli między
innymi Denis Ritchie i Brian Keringhan.
Początkowo UNIX był napisany w
asemblerze.
W roku 1973 został przetłumaczony na
język C stworzony także w AT&T.
71. © 2013 R. Robert Gajewski71/88
20 lat później…
Dwadzieścia lat później w 1991 roku
fiński programista Linus Thorvalds
opublikował uniksopodobny system
operacyjny dla procesorów z rodziny „i”
firmy Intel (i386 i i486).
Nazwa tego systemu pochodzi z
połączenia dwóch słów:
imienia LINus i
nazwy systemu UniX.
72. © 2013 R. Robert Gajewski72/88
Skąd nazwa?
Nazwa ta jest także tłumaczona w inny
sposób: Linux Is Not UniX.
W języku polskim dopuszczalna jest zarówno
pisownia Linux jak i Linuks.
W najprostszej wersji komunikacja z systemem Linux
odbywa się za pomocą interfejsu wiersza poleceń i
komend CLI (Command Line Interface).
Bardziej złożone dystrybucje Linuxa oferują interfejs
graficzny.
73. © 2013 R. Robert Gajewski73/88
Prawa dostępu
Prawa dostępu w systemie Linuks
umożliwiają określenie uprawnień do
plików i katalogów dla poszczególnych
użytkowników.
Prawa dostępu podzielone są na trzy
kategorie:
User – prawa dla użytkownika, który jest
właścicielem pliku,
Group – prawa dla grupy, do której należy właściciel
pliku,
Other – prawa dla pozostałych użytkowników.
74. © 2013 R. Robert Gajewski74/88
Prawa dla plików
Dla każdej z tych kategorii są trzy prawa
dostępu:
read – odczyt,
write – zapis i
execute – wykonywanie.
Znaczenie tych praw dla zwykłych plików
jest intuicyjne.
75. © 2013 R. Robert Gajewski75/88
Prawa do katalogów…
W przypadku katalogów…
jeżeli użytkownik ma prawo x do katalogu, to może
do niego "wejść",
jeżeli użytkownik ma prawo r do katalogu, to może
wyświetlić jego zawartość,
jeżeli użytkownik ma prawo w do katalogu, to może
w nim tworzyć i kasować pliki/katalogi.
76. © 2013 R. Robert Gajewski76/88
Polecenia systemowe
Polecenia systemu operacyjnego Linux
można podzielić na kilka kategorii:
zarządzanie plikami i systemem plików,
zarządzanie procesami, użytkownikami i systemem,
przetwarzanie tekstu,
operacje wejścia i wyjścia.
Największa grupa obejmuje zarządzanie
plikami i systemem plików.
77. © 2013 R. Robert Gajewski77/88
Podstawowe operacje
ls – wypisuje pliki z podanego katalogu
cp – kopiuje plik
mv – zmienia nazwę pliku („przenosi”
plik)
rm – usuwa plik
ln – tworzy dowiązanie do pliku
78. © 2013 R. Robert Gajewski78/88
ls
ls [opcje] [pliki_lub_katalogi]
Bez argumentów wypisuje pliki z bieżącego
katalogu
Z argumentem z podanych katalogów lub
pasujące do nazw wieloznacznych
opcja –l to długa lista, która wymienia:
Atrybuty plików (typ i rodzaj dostępu)
Właściciela i grupę
Rozmiar w bajtach
Czas ostatniej modyfikacji
79. © 2013 R. Robert Gajewski79/88
cp
cp [opcje] plik_1 plik_2 …
Kopiuje plik
cp [opcje] plik_1 [plik_2 […]] katalog
Kopiuje plik(i) do katalogu
Opcja –a kopiuje rekursywnie hierachię
katalogów z zachowaniem plików
specjalnych
Opcja –i to tryb interaktywny: pyta o
pozwolenie przy nadpisywaniu plików
docelowych
80. © 2013 R. Robert Gajewski80/88
mv
mv [opcje] plik_old plik_new
Zmienia nazwę pliku
mv [opcje] plik_1|kat_1 [plik_2|kat_2 […]]
katalog
Przenosi plik(i) lub katalog(i) do katalogu
Opcja –i to tryb interaktywny: pyta o pozwolenie przy
nadpisywaniu plików docelowych
Opcja –f to tryb wymuszony: nadpisuje plik docelowy
81. © 2013 R. Robert Gajewski81/88
rm – usuwa plik
rm [opcje] plik_1 [plik_2 [...]]
usuwa plik(i)
rm -r [opcje] katalog_1 [katalog_2 [...]]
usuwa katalog(i) wraz z zawartościa˛ (rekursywnie)
-i tryb interaktywny: pyta o pozwolenie przy
nadpisywaniu plików docelowych;
-r rekursywne usuwanie katalogu i jego zawartości.
82. © 2013 R. Robert Gajewski82/88
Operacje na katalogach
cd zmienia bieżący katalog,
pwd wypisuje nazwę bieżącego katalogu,
mkdir tworzy katalog,
rmdir usuwa pusty katalog,
rm -r usuwa niepusty katalog wraz z
zawartością
83. © 2013 R. Robert Gajewski83/88
cd
cd (Change Directory) – polecenie, które
służy do przemieszczania się między
katalogami.
Polecenie cd bez parametru powoduje przejście do
katalogu domowego.
(Katalog domowy w systemie Linuks to podstawa
hierarchii katalogów użytkownika, gdzie może on
umieszczać swoje dane.)
84. © 2013 R. Robert Gajewski84/88
cd
cd [sciezka]
zmienia bieżący katalog roboczy
użytkownika na podaną ścieżkę ;
jeżeli ścieżka nie jest podana, katalogiem
bieżącym zostaje katalog domowy
użytkownika.
cd -
powraca do poprzedniego katalogu
roboczego.
85. © 2013 R. Robert Gajewski85/88
cd
cd (Change Directory) – polecenie, które
służy do przemieszczania się między
katalogami.
Polecenie cd nazwa przenosi do katalogu nazwa
podrzędnego do danego.
Polecenie cd ../ przenosi do katalogu nadrzędnego w
stosunku do danego, a
cd – przenosi do poprzedniego katalogu bieżącego.
86. © 2013 R. Robert Gajewski86/88
pwd
pwd
(Print Working Directory) wykonuje wydruk
aktualnego (bieżącego), katalogu roboczego.
Możliwa jest oczywiście zmiana katalogu
roboczego.
87. © 2013 R. Robert Gajewski87/88
mkdir
mkdir [opcje] katalog_1 [katalog_2 [...]]
tworzy katalog(i) o podanych nazwach.
-p jezeli podana jest cała ścieżka,
tworzone są wszystkie konieczne katalogi
nadrzędne;
-m tryb tworzy katalog z podanymi
uprawnieniami
88. © 2013 R. Robert Gajewski88/88
rm
rmdir [opcje] katalog_1 [katalog_2 [...]]
usuwa puste katalog(i) o podanych nazwach.
-p jeżeli podana jest cała ścieżka,
usuwane są wszystkie konieczne katalogi
nadrzędne (muszą być puste);
Jeśli chcemy usunąć katalog z zawartością
musimy komendę użyć parametru –r
umożliwiającego rekurencyjne usunięcie
katalogu wraz z jego zawartością.