UNIX omowienie 1


Rozdział 1
Wstęp
Niezbędnym elementem oprogramowania podstawowego każdego komputera jest system opera-
cyjny. Jego zadaniem jest tworzenie środowiska operacyjnego, w którym użytkownik może wy-
godnie i bezpiecznie opracowywać, uruchamiać lub eksploatować programy. System operacyjny
ukrywa przed użytkownikiem pewne cechy i funkcje sprzętowe, a dostarcza mu w zamian narzędzi
wygodniejszych do rozwiązywania problemów. W szczególności system operacyjny umożliwia:

przechowywanie informacji przez dłuższy czas w pamięci,

wspólne wykorzystywanie urządzeń komputerowych przez grupę osób, jednoczesne wyko-
nywanie różnych czynności przez system komputerowy,

korzystanie z różnorodnych pakietów oprogramowania.
1.1 Filozofia systemu
UNIX od swojego powstania w 1969 roku zyskał znaczną popularność głównie dzięki temu,
iż jest dostępny jest na komputerach różnej mocy  od mikrokomputerów po komputery klasy
mainframe i zapewnia na nich jednakowe środowisko pracy. Mimo, iż system ten powstał ponad
30 lat temu, ciągle jest rozbudowywany.
Zasadniczo system ten składa się z dwóch części:

programy i usługi - dzięki którym środowisko UNIX stało się takie popularne (shelle,
programy pocztowe, kompilatory, ...);

system operacyjny wspierający te programy i usługi.
W połowie lat 70-tych system UNIX został udostępniony uniwersytetom i uzyskał dużą
popularność w społeczności akademickiej, ponieważ:
28 pazdziernika 2001 roku wersja 0.2 1

był mały  pierwsze systemy (na PDP-11) wymagały dysku o rozmiarach 512kB, wyko-
rzystując l6kB na system, 8kB na programy użytkownika i 64kB na plik;

był elastyczny  dostępny był kod zródłowy napisany w języku wysokiego poziomu, co
ułatwiało przenoszenie systemu operacyjnego na inne komputery;

był tani  uniwersytety mogły uzyskać licencję systemu UNIX w cenie nośnika  taśmy,
na której był nagrany. Już pierwsze wersje systemu dawały duże możliwości, takie jakie
miały wówczas tylko systemy operacyjne pracujące na znacznie droższych maszynach.
Powyższe zalety przeważały nad ówczesnymi wadami systemu, takimi jak:

System nie miał opieki informatycznej  AT&T przeznaczył tak znaczne środki na system
MULTICS, że nie był już zainteresowany rozwijaniem systemu operacyjnego UNIX.

Miał wiele błędów, a ponieważ nie było opieki informatycznej, nie było też pewności, że
błędy te zostaną usunięte.

Niewiele lub też wcale nie było dokumentacji  jednakże zawsze można było sięgnąć do
wersji zródłowej.
1.2 Własności systemu UNIX
System UNIX obejmuje system operacyjny pracujący z podziałem czasu (ang. time sharing
operating system), zarządzający pracą oraz zasobami komputera, a także interakcyjne, elastyczne
środowisko operacyjne.
Został tak zaprojektowany, aby równolegle mogło pracować wiele procesów, oraz aby za-
pewnić obsługę wielu użytkowników, umożliwiając wspólne korzystanie z danych. Środowisko
operacyjne zostało zaprojektowane w architekturze modułowej na wszystkich poziomach. Pod-
czas procesu instalacji systemu UNIX można włączyć tylko wybrane elementy, odpowiednie do
potrzeb użytkowników, pomijając pozostałe elementy. Dla przykładu, system UNIX zawiera du-
ży zestaw programów użytkowych służących opracowywaniu oprogramowania. W przypadku,
gdy użytkownicy nie będą opracowywać oprogramowania, wystarczy zainstalować kompilator
w minimalnej konfiguracji, bez tych programów. Interfejs użytkownika jest również zgodny z
filozofią modułową. Polecenia zupełnie niezależne od siebie mogą być w prosty sposób łączone
przez potoki (ang. pipes), umożliwiając wykonanie złożonych operacji.
1.2.1 System operacyjny
Właściwym systemem operacyjnym jest jądro (ang. kernel). Jest ono odpowiedzialne za za-
rządzanie zasobami i dostęp do elementów sprzętu komputerowego. Jądro zawiera odpowied-
28 pazdziernika 2001 roku wersja 0.2 2
nie moduły dla każdego elementu sprzętu komputerowego, z którym współpracuje. Moduły te
umożliwiają oprogramowaniu dostęp do jednostki centralnej, pamięci, dysków, terminali, sieci
komputerowej i innych. Przy instalacji nowych elementów sprzętu komputerowego nowe moduły
mogą być włączone w skład jądra.
1.2.2 Środowisko operacyjne
Narzędzia i aplikacje
Modułowa struktura środowiska systemu UNIX jest najbardziej widoczna w warstwie narzędzi
i aplikacji. Filozofia poleceń systemu jest następująca: każde pojedyncze polecenie wykonuje
dobrze jedną czynność, natomiast zastaw poleceń tworzy pewien komplet narzędzi. W celu wy-
konania konkretnego zadania dobiera się odpowiednie narzędzie lub narzędzia, a złożone zadania
mogą być wykonane przez odpowiednie złożenie narzędzi.
Od samego początku zastaw  narzędzi systemu UNIX zawierał znacznie więcej niż tylko
proste polecenia, służące porozumiewaniu się z systemem. UNIX zapewnia również cały szereg
programów użytkowych jak np. pocztę elektroniczną (mail, mailx), edycje plików (ed, ex, vi),
przetwarzanie tekstów (sort, grep, wc, awk, sed), formatowanie tekstów (nroff), opracowywa-
nie oprogramowania (cc, make, lint, lex), zarządzanie wersjami kodu zródłowego programów
(SCCS, RCS), komunikację między systemami (uucp, ftp, telnet), monitorowanie stanu procesów
i kont użytkowników (ps, du, acctcom).
Interakcyjna, programowalna, modułowa implementacja środowiska użytkownika systemu
sprawia, że nowe programy użytkowe mogą być łatwo przygotowane i dołączone do zestawu
narzędzi użytkownika, a narzędzia które nie są niezbędne, mogą być pominięte bez zakłócenia
pracy systemu.
Dużą popularność systemu UNIX można głównie przypisać:

kompletności i elastyczności systemu, pozwalającym dopasować go do wielu środowisk
aplikacyjnych;

licznym programom użytkowym, zawartym w środowisku operacyjnym, podnoszącym pro-
duktywność użytkowników;

dostępności systemu na wielu platformach sprzętowych i jego przenaszalności.
Program Shell
Program Shell jest interakcyjnym interpretatorem poleceń. Polecenia wprowadzane są po znaku
gotowości programu Shell i wykonywane bezpośrednio po ich wydaniu. Użytkownik komunikuje
się z komputerem właśnie za pomocą programu Shell. Program Shell przyjmuje na wejściu to, co
28 pazdziernika 2001 roku wersja 0.2 3
użytkownik wprowadzi z klawiatury i sprowadza polecanie użytkownika do takiej postaci, która
może być zrozumiana przez jądro systemu. Wtedy system wykonuje polecenie. Należy zauważyć,
że program Shell jest nie zależny od jądra systemu. Jeśli użytkownikowi nie odpowiada interfejs
dostarczonego programu Shell, program ten może być łatwo zastąpiony innym programem Shell.
Obecnie dostępnych jest wiele programów Shell. Niektóre wykorzystują system poleceń, ale są
również takie, które zapewniają interfejs w formie menu.
1.2.3 Hierarchiczny system plików
Informacja przechowywana jest na dysku w pojemnikach zwanych plikami (ang. files). Każdy
plik ma przyporządkowaną nazwę. Użytkownik posługując się tą nazwą może uzyskać dostęp
do określonego pliku. Pliki zawierają zwykle dane, teksty programów, itd. System zawiera setki
plików. W związku z tym istnieje w nim także inny rodzaj pojemnika zwany katalogiem (ang.
directory), który pozwala użytkownikom organizować ich pliki w logiczne grupy. W UNIX-sie
katalog może być wykorzystany do grupowania plików lub innych katalogów. Struktura systemu
plików jest bardzo elastyczna.
1.2.4 Wielozadaniowość (multi-tasking)
W systemie UNIX kilka zadań może być wykonywanych w tym samym czasie. Jeden użytkownik
z pojedynczego terminala może wykonać kilka programów i będzie to wyglądało tak, jakby pro-
gramy te działały jednocześnie. Oznacza to na przykład, że użytkownik może edytować pewien
plik z tekstem, podczas gdy inny plik jest formatowany, a jeszcze inny drukowany. W rzeczy-
wistości jednostka centralna może wykonywać tylko jedno zadanie w danej chwili, ale system
operacyjny ma zdolność dzielenia czasu jednostki centralnej między wiele procesów skierowa-
nych do wykonania w tym samym czasie. Z punktu widzenia użytkownika wygląda to tak, jakby
wszystkie programy były wykonywane równocześnie.
1.2.5 Wielodostępność (multi-user)
Wielodostępność oznacza, że więcej niż jeden użytkownik może rozpocząć pracę i użytkować sys-
tem w tym samym czasie. Wiele terminali lub x-terminali może być dołączonych do tego samego
komputera. Jest to naturalne rozszerzenie wielozadaniowości. Jeśli system może wykonywać wiele
programów równocześnie, to niektóre z tych programów mogą obsługiwać sesje innych użytkow-
ników. Dodatkowo, jeden użytkownik może w tym samym systemie komputerowym rozpocząć
pracę wiele razy z różnych terminali. Dużą zaletą takiej architektury jest możliwość dostępu
wielu członków grupy roboczej do tych samych danych w tym samym czasie.
28 pazdziernika 2001 roku wersja 0.2 4
1.3 Krótka historia UNIXa

W 1965 roku podjęto próby skonstruowania systemu operacyjnego MULTICS (MULTI-
plexed lnformation and Computing System) przez: Bell Telephone Laboratories, General
Electric Company oraz Massachusetts Institute of Technology.
Założenia tego systemu:
 równoczesny dostęp do komputera dużej ilości użytkowników;
 dostarczenie im znacznej mocy obliczeniowej i dużej pamięci operacyjnej;
 wygodne współdzielenie danych.
Pierwsza wersja systemu działała przed 1969 rokiem.

W 1969 r. zaprzestano prace nad Multicsem  implementacja nie spełniała oczekiwań.
Ken Thomson i Denis Ritchie w Laboratoriach Bella naszkicowali zarys systemu wzorowa-
nego na Multicsie. Chcąc stworzyć grę komputerową przenieśli swój projekt na popularny
wówczas komputer DEC PDP-7. Ich współpracownik z laboratorium Brian Kernighan
ochrzcił nowy system nazwą UNIX (pózniej oznaczony jako wersja 1 ).

W 1971 r. zaimplementowano UNIX na bardzo popularnym wówczas DEC PDP-11. Była
to pierwsza wersja, która opuściła laboratorium (start UNIXa, wg. funkcji dostarczanych
przez system nastąpił 1 stycznia 1970 roku  patrz ctime(3)).
Rozmiar systemu:
 system: 16 KB;
 programy użytkowe: 8 KB;
 dysk twardy: 512 KB;
 pliki do 64 KB.

1972 Denis Ritchie stworzył język C.
- używanych jest 10 systemów UNIX
powstaje druga edycja systemu.

1973 Przepisano UNIXa z asemblera na C.
- 25 instalacji UNIXa
Czwarta edycja systemu.
System jest po raz pierwszy, nieoficjalnie dystrybuowany na uniwersytetach

1974 pierwsza poważna wzmianka o UNIXie w prasie fachowej (Communications of ACM
- UNIX wersja 6 ).
28 pazdziernika 2001 roku wersja 0.2 5
Piąta edycja  System jest oficjalnie dostępny dla uniwersytetów, ale tylko do celów
edukacyjnych

1975 Szósta edycja  Licencje systemu są dostępne dla instytucji rządowych i komercyj-
nych.

1977 - ok. 500 instalacji UNIXa, w tym 125 na uniwersytetach.
Pierwsza firma zaczyna handlować UNIXem.

1978  Siódma edycja.

1982 w Bell Laboratories połączono kilka wersji UNIXa powstałego w AT&T w jeden
system komercyjnie znany jako UNIX System III.

1983 Bell Labs. dodało do Systemu III kilka udogodnień - powstał UNIX System V (co się
stało z Systemem IV?). AT&T oficjalnie zaczęło wspierać UNIX System V.
Pracownicy Uniwersytetu Kalifornijskiego w Berkeley dodali ciekawe udogodnienia i za-
implementowali je na komputery VAX - powstał BSD (Berkeley Software Distribution)
UNIX 4.3.

1984 ok. 100.000 instalacji od mikrokomputerów do dużych maszyn.

1985 System V Interface Definition (SVID)  określa standardowe funkcje systemowe
(ang. system calls).

1989 System V Release 4 (SVR4)  system zgodny z POSIX.l.
1.4 Powody popularności
Główne powody popularności systemu UNIX to:

system jest napisany w języku wysokiego poziomu, co ułatwia przenoszenie na nowe plat-
formy sprzętowe;

prosty interfejs użytkownika (zarówno tekstowy, jak i graficzny);

wygodny system plików;

dostępność wielu narzędzi;

wielodostępność i wieloprocesowość;

stabilność i bezpieczeństwo w użytkowaniu systemu.
28 pazdziernika 2001 roku wersja 0.2 6
1.5 System UNIX i standardy
System otwarty  modne jest ostatnio to hasło  najogólniej jest to system komputerowy
pozostający w zgodzie z uznanymi międzynarodowymi standardami i współpracujący z innymi
produktami spełniającymi wymagania tych standardów.
W takim systemie pochodzące z różnych zródeł: sprzęt, oprogramowanie, oraz systemy ope-
racyjne mogłyby ze sobą dowolnie współpracować na przykład w sieci komputerowej. Dzięki
standaryzacji wszelkich połączeń między nimi.
Otwarty system operacyjny  system prawdziwie przenośny i uniwersalny bez bliższych
związków z jakąkolwiek architekturą, czy konfiguracją o precyzyjnie zdefiniowanych i znormalizo-
wanych regułach współpracy z oprogramowaniem użytkowym i użytkownikami. Proces rozwoju
takiego systemu również powinien być otwarty, a więc jawny i oparty na współpracy wszystkich
zainteresowanych.
UNIX dzisiaj jest najbliższy pod tymi względami ideałowi.
Filozofia systemów otwartych, czy otwartych systemów operacyjnych nie jest czymś nowym.
Użytkowników i programistów zawsze pociągały takie idee, nie miało to jednak większego wpły-
wu na strategię rynkową producentów.
Możliwość łatwego przenoszenia aplikacji była jednym z celów rozwoju systemu UNIX od
samych jego początków. Ponieważ większość systemu operacyjnego i programów użytkowych
została napisana w języku C, a nie w asemblerze, system UNIX nie był ograniczony do jed-
nego tylko procesora, czy też jednej platformy sprzętowej. Z drugiej strony, ponieważ system
UNIX jest napisany w języku wysokiego poziomu, łatwo go modyfikować. Świadczy o tym po-
nad 100 firm oferujących implementacje zbudowane na podstawie systemu UNIX, licencjonowane
przez AT&T, oraz wiele implementacji naśladujących system UNIX, które nie wymagają licencji
AT&T. Chociaż większość implementacji wywodzi się z systemu UNIX firmy AT&T, systemu
UNIX BSD lub z ich kombinacji, każda implementacja może zawierać pewne szczególne roz-
szerzenia systemu operacyjnego, takie jak np. przetwarzanie w czasie rzeczywistym, które mogą
zniweczyć zgodność różnych implementacji systemu. Obecnie system V zawiera już w sobie wiele
popularnych własności systemu BSD.
W celu zapewnienia zgodności różnych implementacji, formułuje się standardy środowiska
systemu operacyjnego UNIX. Celem tych standardów jest promowanie:

Przenaszalności  możliwości łatwego przenoszenia aplikacji z jednej implementacji sys-
temu na inną.

Współpracy aplikacji  możliwości wymiany informacji między aplikacjami pracującymi
na różnych implementacjach systemu.
28 pazdziernika 2001 roku wersja 0.2 7

Skalowalności  oferowania całej rodziny opcji sprzętowych, poczynąjąc od małych do
dużych systemów, po to, by użytkownik mógł wybrać z tej oferty opcję odpowiednią do
jego potrzeb aplikacyjnych. Ponadto  możliwości elastycznej rozbudowy sprzętu i po-
większania jego możliwości wraz z rozbudową aplikacji.
1.5.1 Cele organizacji standaryzujących (normalizacyjnych)
Określić interfejs, a nie implementację
Standardy nie mają na celu zbudowanie zupełnie nowego interfejsu, ale określenie interfejsu
na podstawie już istniejących implementacji systemu UNIX; takiego, który byłby dobrze zdefi-
niowany i przenaszalny. Istotne jest zrozumienie, że standardy mają na celu określenie interfejsów
środowiska systemu operacyjnego UNIX, a nie tego jak standard powinien być zaimplementowa-
ny. Standardy systemu UNIX nie wymagają, aby wszystkie komputery z systemem UNIX były
swoimi kopiami, ale raczej, aby wszystkie zapewniły pewien wspólny zestaw funkcji. Konkret-
na implementacja powinna natomiast spełnić te funkcje. Dobrym przykładem jest samochód.
Podstawowy interfejs określony przez  standard samochodu jest następujący:
Jazda  naciśnij pedał gazu.
Stop  naciśnij pedał hamulca.
Zmiana kierunku  obróć kołem kierownicy.
Uruchomienie silnika  przekręć kluczyk stacyjki.
Samochody spełniające standard tego interfejsu, mogą być budowane na wiele różnych sposo-
bów. Samochód może mieć, na przykład, silnik elektryczny albo silnik benzynowy, ale naci5niecie
pedału gazu w obu przypadkach spowoduje jazdę samochodu.
Zgodnie z powyższą filozofią również inne systemy operacyjne będą zgodne ze standardem,
jeśli tylko spełnią warunki opisanego interfejsu.
Modułowość
Środowisko obliczeniowe ciągle się zmienia i rozwija. Standardy powinny być rozszerzalne.
Powinny być możliwe do zachowania, mimo rozwoju technologii i rosnących wymagań użytkow-
ników. Standardy są określane w sposób modułowy, tak że pewne moduły mogą być dodane lub
ewentualnie wymienione, gdy pojawia się potrzeba lepszego interfejsu.
1.5.2 Podstawowe standardy i grupy definiujące UNIX

UI (UNIX International)  AT&T i Sun połączyły się jako pierwsze i powołały korpo-
rację, pózniej dołączyły do nich między innymi: Olivetti, Unisys, Toshiba. Wydali specy-
fikację:
 System V Release 4 (SVR4),
28 pazdziernika 2001 roku wersja 0.2 8
 System V Interface Definition (SVID) - ok. 1000 stron.

OSF (Open Software Fundation)  konsorcjum powołane przez IBM, DEC, Bull, HP, któ-
re ma opracowywać i promować przemysłowe standardy otwartego systemu operacyjnego
wzorowanego na UNIXie, za pierwowzór pierwotnie przyjęto AIX (UNIX z IBM ) Wydali
system operacyjny OSF/1 wzorowany na systemie Mach z Uniwersytetu Carnegie Mellon
i AIX, oraz OSF/Motif - graficzne środowisko otwarte.

POSIX (Portable Operating System Interface for Computer Environments) Instytut IE-
EE (Institute of Electrical and Electronics Engineers) jest sponsorem standardu POSIX.
Standard ten powstał w 1984 roku ze standardu stowarzyszenia /usr/group (poprzednika
UniForum) ponad standardem SVID. POSIX 1003 został utworzony w celu przygotowa-
nia standardów pełnego środowiska operacyjnego, a nie tylko interfejsu jądra systemu. W
odróżnieniu od standardów firmy AT&T, POSIX definiuje interfejs programistyczny bez
określenia implementacji. W związku z tym mogą być opracowywane systemy zgodne ze
standardem POSIX nie wywodzące się z implementacji firmy AT&T. Standard POSIX
został również zgłoszony do ISO w celu włączenia go do norm międzynarodowych. PO-
SIX wyraznie zyskał na znaczeniu, gdy władze federalne USA zapowiedziały, że nie będą
kupowały systemów z nim nie zgodnych.
W celu przyspieszenia prac nad standardem, POSIX został podzielony na kilka zagadnień.
Każdym zagadnieniem zajmuje się odpowiednia grupa robocza:
1003.1 System Interface  interfejs systemu (grupa utworzona w 1981 roku). Określa kod
zródłowy, ramy interfejsu programistycznego, języka wysokiego poziomu, który ułatwia
przenaszalność aplikacji. POSIX.1 jest bliski standardowi SVID Issue 2 (SVID2), ale za-
wiera również pewne własności systemu 4.3BSD, a także pewne dodatkowe własności nie
uwzględnione w innych definicjach interfejsów.
1003.2 Shells and Utilities  Programy Shell i programy użytkowe (grupa utworzona w
1984 roku). Definiuje język poleceń programów Shell i interakcyjne programy użytkowe.
1003.3 Testing Methods  Metody testowania (grupa utworzona w 1986 roku). Określa
ogólne wymagania dotyczące testów zgodności, ich przygotowania i administrowania, nie
tworzy natomiast konkretnych testów zgodności. Sama metoda testowania jest w gestii
dostawcy.
1003.4 Real Time  Czas rzeczywisty: 4a  Thread extensions  Rozszerzenia związane
z wątkami, 4b  Language Independent Specification  Specyfikacja niezależna od języka
1003.5 Ada Binding for POSIX  Interfejs z języka Ada do standardu POSIX
28 pazdziernika 2001 roku wersja 0.2 9
1003.6 Security
1003.7 System Administration
1003.8 Networking
1003.9 FORTRAN Binding for POSIX
1003.10 Supercomputing Application Execution Profile (AEP)
1003.11 Transaction Processing AEP
1003.12 Protocol Independent Interfaces
1003.13 Real Time AEP
1003.14 Multiprocessing AEP

X/Open - organizacja powstała w Europie formalnie nie będąca organizacją standary-
zującą ale za taką uważana, publikuje X/Open Portability Guide (XPG) - wielotomowy
dokument (ponad 2000 stron) próbujący wypełniać luki w dziedzinach, gdzie standardy
nie istnieją odwołując się do faktycznych standardów lub w ostateczności promując własne
rozwiązania. XPG to coś w rodzaju  ruchomych odsyłaczy do innych dokumentów.
Poniżej przedstawia się niektóre elementy X/Open i definiujące je standardy:
Element Standard definiujący
System Calls & Libraries POSIX 1003.1
Commands & Utilities POSIX 1003.2
C Language ANSI
COBOL Language ANSI/ISO
FORTRAN Language ANSI
Pascal Language ISO
SQL ANSI
Window Manager X Window System

ANSI (American National Standards Institute) ANSI jest organizacją mającą na celu ko-
ordynację samorzutnie tworzonych standardów w USA. W instytucie IEEE istnieje komitet
do spraw standardów stowarzyszony z ANSI.

ISO (International Standards Organization) Organizacja ISO koordynuje proces przysto-
sowania międzynarodowych standardów dotyczących systemów z rozproszoną informacją
w środowisku systemów otwartych (środowisku heterogenicznych systemów sieciowych).
Najbardziej znaczące działania dotyczyły zagadnień sieciowych oraz określenia siedmio-
warstwowego, sieciowego modelu odniesienia OSI (Open Systems Interconnection). Uczest-
28 pazdziernika 2001 roku wersja 0.2 10
nicy ISO pochodzą z narodowych organizacji standaryzujących, z krajów będących człon-
kami tej organizacji.

NIST/FIPS (National Institute of Standards and Technology, Federal Information Pro-
cessing Standard) NIST był poprzednio Narodowym Biurem Standardów (NBS  Natio-
nal Bureau of Standards). Podlega Departamentowi Handlu rządu USA. Organizacja ta
opracowuje standardy z punktu widzenia potrzeb agencji rządowych. Jej oryginalnym za-
daniem była ocena zaproponowanych standardów POSIX.l. Powstały w wyniku tej pracy
standard FIPS zawiera POSIX oraz dodatkowe właściwości, które w POSIX.1 były roz-
patrywane jako opcjonalne, a niektóre w ogóle nie były wyspecyfikowane. NIST ocenia
również inne elementy POSIX, w miarę jak stają się dostępne.
Problemy jakie rodzi standaryzacja:

proces standaryzacji może nigdy się nie skończyć;

zbyt daleko idąca standaryzacja może skutecznie zahamować innowacyjność.
28 pazdziernika 2001 roku wersja 0.2 11


Wyszukiwarka

Podobne podstrony:
UNIX omowienie 6
UNIX omowienie 2
UNIX omowienie 4
UNIX omowienie 5
Active Directory omówienie domyślnych jednostek organizacyjnych
Unix lab 9
materialy pomocnicze unix
Kasy fiskalne 2014 z omowieniem ekspertow CMS Cameron McKenna
Berkeley Unix Summary
Omówienie metodyki prowadzenia poszczególnych analiz problemowych na
Unix Wprowadzenie Internet i inne sieci
Ćwiczenia Active Directory omówienie jednostek organizacyjnych
Instalacja pracowni omówienie
Systemy Operacyjne Unix Linux solarka2
OMÓWIENIE INTERFEJSÓW I KLAS ABSTRAKCYJNYCH W JĘZYKU JAVA
2 Omowienie pakietu MS Office i Open Office Ogolne wlasciwosci?ytora tekstu

więcej podobnych podstron