Środowisko pracy informatyka zima 2014

Slides:



Advertisements
Podobne prezentacje
Procedura instalacji systemu Windows XP
Advertisements

Procedura instalacji systemu Linux
20041 Projektowanie dynamicznych witryn internetowych Paweł Górczyński ASP 3.0.
Wykorzystanie konta uczelnianego dla potrzeb stron WWW
Sieci komputerowe Usługi sieciowe Piotr Górczyński 27/09/2002.
Prezentacja o MS-DOS’ie
System operacyjny MS-DOS
1 Linux jako system wielozadaniowy i wielodostępny.
Dodawanie i usuwanie oprogramowania
„BSD alternatywa dla Linuksa”
PRACA W LINUKSIE W czym pisać? Przedstawienie edytorów tekstów od vi przez emacs aż do Kwrite Pakiety biurowe w Linuksie. Zgodność plików z plikami Microsoft.
OGÓLNIE O LINUKSIE Co to jest Linux?
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE INSTALACJA.
System Operacyjny Zajęcia 4.
Systemy operacyjne.
Systemy operacyjne Bibliografia:
Systemy operacyjne Bibliografia:
Systemy operacyjne Bibliografia:
Artur Mazurek Piotr Podziemski
Podstawowe komendy UNIXA
Instalacja systemu Windows Vista
SAMBA JAKO SERWER PLIKÓW
System operacyjny LINUX
1 Podstawy informatyki H. P. Janecki- 2006_ Systemy Operacyjne W6.
WINDOWS 95 WYCINEK AUTOSTART TWORZENIE POWIĄZAŃ PLIKÓW Z APLIKACJAMI
Technologie informacyjne MCE Pudełko. Zakładanie strony internetowej Technologie informacyjne Marek Pudełko.
Linux – darmowy system komputerowy
REPOZYTORIA 1. Co to są repozytoria?
Budowa, przeglądanie i modyfikacja
USŁUGA FTP 1. Definicja FTP. FTP (File Transfer Protocol, ang. protokół transmisji plików) jest protokołem typu klient-serwer, który umożliwia przesyłanie.
Autorki: Maja Fedoryka, Joanna Luty
Praca napisana pod kierownictwem dra Jacka Kobusa
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
Historia Linux’a.
Interpretatory poleceń - powłoki systemu
Linux - polecenia.
Wielozadaniowowść systemu operacyjnego Linux
Systemy operacyjne.
Budowa systemu komputerowego
System operacyjny i jego usługi
Systemy operacyjne. Komputer aby mógł realizować zadania oraz aby wszystkie urządzenia w systemie komputerowym mogły działać poprawnie, musi być wyposażony.
Systemy operacyjne.
System plików systemu linux
Programowanie obiektowe – zastosowanie języka Java SE
LINUX MAGDALENA SALIK.
Sieciowe systemy operacyjne - UNIX
Porównanie systemów operacyjnych Windows i Linux
Etapy uruchamiania systemu Pliki konfiguracyjne
Instalacja Windows 7 z pendrive’a
Autor: Marta Pelczar. PHP:  Najprostszą drogą, by uruchomić serwer internetowy na własnym domowym komputerze jest skorzystanie z programu XAMPP.
System Linux Źródło Przygotowanie stanowiska komputerowego do pracy, część 2 - WSIP.
Linux, to kompletny system operacyjny (jądro i programy użytkownika), który powstał na zasadzie GNU – czyli Powszechnej Licencji Publicznej (General Public.
Linux. Legalność i Dostępność Oparty jest na licencji GNU – tzn. Dla zwykłych użytkowników jest bezpłatny Oparty jest na licencji GNU – tzn. Dla zwykłych.
Microsoft Disk Operating System
System operacyjny Windows
Podstawy języka skryptów
Dokumentacja obsługi programów Kamil Smużyński Piotr Kościński.
Sposoby zdalnego sterowania pulpitem
Struktura systemu operacyjnego
Temat 1 Pojęcie systemu operacyjnego Opracował: mgr Marek Kwiatkowski.
Temat 4 Systemy plików [Przedmiot: Systemy operacyjne | Opracował: mgr Marek Kwiatkowski | ZS Mogilno – 2015]
Aktualizowanie systemów operacyjnych Przedmiot: Systemy operacyjne Klasa: 1TI Opracował: Marek Kwiatkowski.
Systemy operacyjne System operacyjny - oprogramowanie zarządzające systemem komputerowym, tworzące środowisko do uruchamiania i kontroli zadań użytkownika.
Linux ssh.
System operacyjny LINUX
System operacyjny Linux
Sieci komputerowe Usługi sieciowe 27/09/2002.
Microsoft Disk Operating System
Zapis prezentacji:

Środowisko pracy informatyka zima 2014 Wykład 3 Budowa systemu Unix / Linux dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki http://wbieniec.kis.p.lodz.pl/pwsz

Architektura systemu operacyjnego

Architektura systemu operacyjnego Jądro systemu operacyjnego kontroluje bezpośrednio podległy sprzęt. Zapewnia sterowniki niskopoziomowe urządzeń, funkcje zarządzania pamięcią i procesorem (np. obsługę przerwań sprzętowych, podział procesora pomiędzy wiele programów, alokację pamięci dla programów itp.) Podstawowe niezależne od sprzętu usługi jądra są dostępne dla programów wyższego poziomu poprzez bibliotekę wywołań systemowych (np. usługi tworzenia pliku, rozpoczęcie wykonywania programu, otwarcie logicznego połączenia sieciowego). Aplikacje (np. edytory tekstu, arkusze kalkulacyjne) oraz narzędzia systemowe (proste programy dostarczane wraz z systemem operacyjnym, np. program wyszukujący łańcuch tekstowy) korzystają z wywołań systemowych. Są uruchamiane poprzez powłokę (linię poleceń) lub graficzny interfejs użytkownika.

Początki UNIXa 1965 MULTICS (MIT+ AT&T Bell Labs + GE) MULTiplexed Information and Computing Service 1969 AT&T Bell Labs wycofuje się z projektu; Ken Thompson i Dennis Ritchie (Bell Labs) pracując na własną rękę, tworzą w oparciu o idee MULTICSa nowy system UNICS, (UNiplexed Information and Computing Service), który implementują na PDP-7

Początki UNIXa, cd 1971 AT&T UNIX First Edition (11/3/1971) pierwsza oficjalna wersja systemu, zawierająca procesor tekstu, zaimplementowana na PDP-11 1973 3-th Edition UNIX (3/73) pojawiły się potoki (pipes) i filtry oraz kompilator języka C. Jądro systemu napisane w asemblerze. 1973 4-th Edition UNIX (11/73) jądro systemu napisane w C. 1975 6-th Edition UNIX (V6 UNIX) pierwsza wersja systemu powszechnie dostępna poza Bell Labs.

BSD UNIX Na skutek problemów prawnych AT&T nie mogło zarabiać na sprzedaży UNIXa – postanowiło więc udostępnić go uniwersytetom, gdzie system był dalej rozwijany. 1977 Bill Joy z Uniwersytetu Kalifornijskiego w Berkeley wydaje pierwszą wersję Berkeley Software Distribution, znaną jako 1BSD. 1980 W następstwie otrzymania kontraktu DARPA (Defense Advanced Research Projects Agency) Bill Joy tworzy w Berkeley kolejną dystrybucję: 4.1BSD. 1984 Powstaje 4.2BSD zawierająca TCP/IP. Rok wcześniej Bill Joy odchodzi, by stworzyć Sun Microsystems. 1986 Powstaje poprawiona wersja 4.3BSD. 1994 Powstaje ostatnia wersja z Berkeley: 4.4BSD.

AT&T UNIX 1982 UNIX System Group (AT&T) wypuszcza System III UNIX. 1983 UNIX System Development Labs (AT&T) wypuszcza System V UNIX Release 1 (SVR1). 1984 Powstaje System V UNIX Release 2 (SVR2). 1985 Pojawia się SVR3 zawierająca m.in. NFS (Network File System). 1992 UNIX System Labs (AT&T) wypuszcza SVR4.2. 1993 Novell kupuje USL od (AT&T) i wypuszcza SVR4.2MP. 1995 SCO (Santa Cruz Operation) kupuje Uniksa od Novella. 2001 Caldera (dystrybutor Linuxa) kupuje Uniksa od SCO.

Historia UNIXa

Ważniejsze gałęzie drzewa rodziny UNIX

Systemy z rodziny UNIX AIX http://www.ibm.com/aix/ FreeBSD http://www.freebsd.org/ HP-UX http://www.hp.com/go/hpux/ Linux http://www.kernel.org/ Mac OS X http://www.apple.com/macosx/ Minix http://www.minix3.org/ NetBSD http://www.netbsd.org/ OpenBSD http://www.openbsd.org/ SCO OpenServer http://www.sco.com/products/openserver6/ OpenSolaris http://www.opensolaris.com/, http://www.opensolaris.org/ Android http://www.android.com/

Odmiany UNIXa – przykłady Odmiany oparte o SYSV są bardziej konserwatywne, lecz mają lepsze wsparcie niż te oparte o BSD. Ostatnie wersje SYSV (SVR4) i BSD Unix są bardzo podobne – różnią się strukturą systemu plików, nazwami narzędzi systemowych i opcji oraz bibliotekami wywołań systemowych. Różnice pomiędzy SYSV a BSD Przykład Typowy SYSV Typowy BSD nazwa jądra /unix /vmunix skrypty rozruchowe katalogi /etc/rc.d pliki /etc/rc.* zamontowane systemy plików /etc/mnttab /etc/mtab domyślna powłoka sh, ksh csh, tcsh rozmiar bloku systemu plików 512B – 2kB 4kB – 8kB podsystem druku lp, lpstat, cancel lpr, lpq, lprm polecenie echo (bez nowego wiersza) echo "\c" echo -n polecenie ‘ps’ ps –fae ps -aux wywołanie wielokrotnego oczekiwania poll select wywołanie dostępu do pamięci memset, memcpy bzero, bcopy

Architektura warstwowa UNIXa

Warstwy Unixa z punktu widzenia użytkownika Aplikacje – tysiące programów, obsługiwanych bądź z linii poleceń , bądź przez środowisko graficzne. Menedżery okien i środowiska graficzne – oprogramowanie korzystające z systemu X odpowiedzialne za wygląd interfejsu, mogące być również kompletnymi środowiskami pracy (np. GNOME, KDE); X Window – system graficzny udostepniający obsługę okien, menu, ikon, myszy i innych elementów typowych dla graficznego interfejsu użytkownika Powłoka – tekstowy interfejs użytkownika, pozwalający wpisywać polecenia, wykonywać je i wyświetlać wyniki; Narzędzia i biblioteki udostępniające programom użytkownika funkcje jądra Jądro systemu – system operacyjny niskiego poziomu, służący do komunikacji ze sprzętem zainstalowanym w komputerze;

Jądro monolityczne UNIXa Jądro monolityczne jest jednym programem, podzielonym na podprogramy, które wzajemnie są ze sobą powiązane. Brak w nich wyraźnej struktury, lub jest ona dosyć luźna. Przykłady oprócz Unixa to: MS-DOS, MS-Windows 95, 98, ME. Użytkownicy Programy użytkowników, shell, biblioteki systemowe JĄDRO Interfejs pomiędzy wywołaniami systemowymi a resztą jądra Interfejs pomiędzy jądrem a sprzętem terminale Pamięć masowa Pamięć operacyjna procesor Oryginalne jądro systemu Unix było zaprojektowane dla sprzętu nieposiadającego żadnego mechanizmu ochrony. Mimo to twórcy systemu postanowili dokładnie odseparować procesy użytkownika od sprzętu.

Czym jest Linux Akronim rekursywny: Linux Is Not UniX Linux jest to bezpłatna wersja systemu operacyjnego UNIX o otwartym źródle. praktycznie: nazwę „Linux” odnosimy do całego systemu operacyjnego: jądra wraz z aplikacjami. technicznie: Linux jest to jądro systemu; Pozostałe elementy systemu (narzędzia, aplikacje itp.) można dobrać na wiele sposobów – skorzystać z tysięcy rozwijanych niezależnie projektów. Dobór tych elementów systemu i ewentualne uzupełnienie własnym oprogramowaniem przez konkretną osobę, organizację lub firmę nosi nazwę dystrybucji. Linus Torvalds, twórca Linuxa Dystrybucji Linuxa nadających się do zastosowania na danym stanowisku może być bardzo wiele. Często użytkownicy kierują się dostępnością dystrybucji dla danej architektury, dotychczasowym doświadczeniem, poradami środowiska, oferowanym (także odpłatnie) wsparciem oraz własnym gustem.

Dystrybucje Linuxa – wskazówki Czym kierować się w wyborze dystrybucji Instalacja systemu – jak pracuje się z instalatorem dystrybucji? Konfiguracja systemu – jak łatwo/wygodnie konfiguruje się do działania urządzenia, usługi i środowiska do wymagań użytkownika? Instalacja i aktualizacja oprogramowania – jak łatwo/wygodnie instaluje się opcjonalne składniki systemu (biblioteki, aplikacje itp.) i jak często są one aktualizowane do najnowszych wersji? Dokumentacja i wsparcie – czy system jest dobrze udokumentowany, czy zależy nam na firmowym wsparciu (zazwyczaj odpłatnie) i jak szerokie jest wsparcie społeczności użytkowników?

Dystrybucje Linuxa – lista CentOS http://www.centos.org/ Debian http://www.debian.org/index.pl.html Fedora http://fedoraproject.org/pl/ Gentoo http://www.gentoo.org/ Knoppix http://www.knopper.net/knoppix/index-en.html Mandriva http://www.mandriva.com/pl/ openSUSE http://pl.opensuse.org/ RedHat http://www.redhat.com/ Slackware http://www.slackware.com/ Ubuntu http://www.ubuntu.com/ Xandros http://www.xandros.com/

Dystrybucje Linuxa – skąd pobrać sklepy detaliczne – ze względu na częste zmiany wersji niewiele dystrybucji jest rozprowadzanych w ten sposób; sklepy internetowe – znacznie częstsza forma sprzedaży dystrybucji, zazwyczaj dystrybucję można nabyć również bezpośrednio ze strony producenta; serwery udostępniające oprogramowanie – główne źródło pozyskiwania dystrybucji rozprowadzanych nieodpłatnie (również ze stron twórców i producentów); materiały dołączane do czasopism, czasami z dołączonym oprogramowaniem dodatkowym (własnościowym) lub promocje dystrybucji komercyjnych (wersje demonstracyjne lub bez wsparcia). Uwaga: większość dystrybucji Linuxa jest bezpłatnych, jednak aby legalnie posługiwać się systemem operacyjnym należy zakupić legalny nośnik (płytę CD lub DVD)

Jądro systemu Linux Jądro zawiera wsparcie dla sterowników sprzętowych dla wielu urządzeń PC (kart graficznych, sieciowych, dysków twardych itp.), zaawansowane funkcje zarządzania procesorem i pamięcią oraz wsparcie dla wielu różnych rodzajów systemów plików (łącznie z dyskietkami DOS, pendrive’ami i standardem ISO9660 dla CD-ROM i DVD-ROM). Jądro implementuje większość wywołań systemowych BSD i SYSV, jak również wywołania systemowe opisane w specyfikacji POSIX.1. Jądro Linuxa jest przykładem jądra monolitycznego z modułami – możliwość ładowanie w trakcie działania jądra pewnych jego fragmentów (np.: sterowników urządzeń) do pamięci, na podobnej zasadzie, jak programy użytkowników ładują biblioteki współdzielone. Jądro takie jest wyposażone w dodatkowe elementy: tablicę symboli, mechanizm ładowania modułu i mechanizm śledzenia zależności między modułami. Jądro w surowej postaci binarnej (ładowane bezpośrednio do pamięci w czasie uruchamiania) typowo znajduje się w pliku /boot/vmlinuz, podczas gdy źródła zazwyczaj można znaleźć w /usr/src/linux. Najnowszą wersję jądra Linuxa można pobrać z http://www.kernel.org.

Powłoka i GUI Linuksa Dostępne dwie formy wprowadzania poleceń: tekstowa powłoka linii poleceń, podobna do spotykanej w większości systemów UNIX ‘sh’ – powłoka Bourne’a, ‘bash’ – „Bourne again shell” ‘csh’ – powłoka języka C); interfejs graficzny (GUI) – menedżery okien KDE lub GNOME.

Narzędzia systemowe Linuksa Każde narzędzie systemowe, którego można się spodziewać w standardowych implementacjach UNIX’a (włączając narzędzia systemowe opisane w specyfikacji POSIX.2) jest przeniesione do Linuksa. Narzędzia systemowe zaprojektowano tak, aby wykonywać efektywnie pojedyncze zadania. Użytkownik może często rozwiązywać problem łącząc te narzędzia zamiast budować jednolitą aplikację. Narzędzia systemowe Linuksa zawierają również programy zwane demonami, które zapewniają zdalne usługi sieciowe i administracyjne. Demon (łac. dæmon lub ang. Disk And Executing MONitor) zazwyczaj jest uruchamiany automatycznie podczas startu systemu i przez większość czasu oczekuje na pojawienie się zdarzenia.

Przykłady demonów w Linuksie atd and crond: Task scheduler daemons bootparmd and dhcpd: Dynamic Host Configuration Protocol and Internet Bootstrap Protocol servers fingerd: Finger protocol server ftpd: File Transfer Protocol (FTP) server httpd: Hypertext Transfer Protocol (HTTP) daemon (web server) identd: Provides the identity of a user of a particular TCP connection inetd and xinetd: Internet Superserver Daemon amed: A Domain Name System (DNS) server daemon nfsd: Network File System (NFS) daemon ntpd: Network Time Protocol (NTP) service daemon portmap, rpcbind: SunRPC port mapper mysqld, postgresql: Database server daemons routed, gated: Manages routing tables nfsd, mountd, statd: Part of typical Network File System implementation rwhod: Maintains the database used by the rwho and ruptime tools sendmail, postfix: mail transfer agent daemons snmpd: Simple Network Management Protocol Daemon syslogd: Syslog daemon telnetd and sshd: Telnet and Secure Shell server daemons ypbind: A bind server for Network Information Service ("Yellow Pages")

Programy aplikacji w Linuksie Dystrybucja Linuksa typowo zawiera wiele użytecznych aplikacji, takich jak np. edytor tekstu ‘emacs’, przeglądarka obrazów ‘xv’, kompilator C ‘gcc’, kompilator C++ ‘g++’, program rysujący ‘xfig’, język składu tekstu ‘latex’, pakiet biurowy OpenOffice.org ‘ooffice’. Redhat Linux i inne dystrybucje zawierają również Redhat Program Manager ‘rpm’, który czyni łatwym instalację i deinstalację programów aplikacji.

Podstawowe polecenia Linuksa Polecenia wejścia i wyjścia Polecenie we/wy Opis shutdown -r now / reboot restart systemu (tylko superuser lub root) shutdown -h now / halt wyłączenie komputera (j/w.) su użytkownik zamiana użytkownika (ang. switch user) login zalogowanie się do nowej sesji exit / logout zakończenie zalogowanej sesji (jeśli to jedyna sesja - powoduje opuszczenie środowiska pracy i wywołanie okna logowania) startx rozpoczęcie pracy w środowisku graficznym X Window kdm, gdm, xdm dla managera logowania w trybie graficznym, odpowiednio KDE, GNOME i XFree86 (wywołanie managera nie oznacza wyboru środowiska graficznego)

Podstawowe polecenia Linuksa Operacje na plikach i katalogach Polecenie Opis cd nazwa_katalogu przejście do katalogu. Wpisanie samego cd powoduje przeniesienie do katalogu domowego /home/uzytkownik (ang. Come in Directory). mkdir nazwa_katalogu tworzy katalog o podanej nazwie (ang. Make Directory) rmdir nazwa_katalogu usuwa katalog (ang. Remove Directory) pwd podaje ścieżkę obecnego katalogu ls pokazuje listę plików znajdujących się w danym katalogu (ang. List)

Podstawowe polecenia Linuksa Operacje na plikach i katalogach Polecenie Opis ls pokazuje listę plików znajdujących się w danym katalogu (ang. List) cp plik katalog kopiuje plik do podanego katalogu (ang. Copy). Aby skopiować cały katalog musimy użyć opcji -r, czyli cp -r katalog inny_katalog mv plik katalog przenosi plik do podanego katalogu (ang. Move) lub zmienia nazwę pliku. Aby zmienić nazwę pliku należy wpisać mv nazwa_pliku nowa_nazwa. rm plik usuwa plik o podanej nazwie (ang. Remove), aby usunąć katalog wraz z zawartością należy użyć opcji -r touch nazwa_pliku tworzy plik o podanej nazwie (lub dla ambitnych - zmienia czas pliku). Plik można edytować dowolnym edytorem i nadać mu odpowiednie prawa i atrybuty ln -s /.../katalog/plik nazwa wykonuje dowiązanie symboliczne (ang. Link), od tej pory plik będzie można wykonywać (wywoływać) poleceniem ./nazwa, przydatne gdy instalujemy program ze źródeł i chcemy zrobić do niego skrót whereis nazwa_pliku poszukuje plików źródłowych, binarnych lub stron podręcznika (ang. manual), z ang. Where is? - dosł. Gdzie jest?

Podstawowe polecenia Linuksa Operacje na procesach Polecenie Opis ps wyświetla stan procesów ps -x wyświetla aktualne procesy użytkownika kill nr_pid kończy proces, nr_pid jest wyświetlany w pierwszej kolumnie po wywołaniu polecenia ps

Podstawowe polecenia Linuksa Uzyskiwanie pomocy lub informacji Polecenie Opis man nazwa_polecenia wyświetla stronę podręcznika programu (o ile taka istnieje) uname -a wyświetla informacje: nazwa jądra systemu, sieciowa nazwa systemu, numer kernela, wersja jądra, architektura i nazwa systemu who wyświetla informacje o użytkowniku (z ang. kto) finger rozbudowane who, (z ang. palec, dotykać palcem) who am I wyświetla informacje o aktualnym użytkowniku w danej sesji file plik wyświetla informacje o pliku (tj. kodowanie, rodzaj pliku) df informacje o stanie dysku twardego (zużycie miejsca), jednostki można określić np. -m - Megabajty, -k - kilobajty du wielkość pliku lub katalogu (określenia j/w.)

Podstawowe polecenia Linuksa Instalacja i deinstalacja aplikacji Polecenie Opis tar -xvf nazwa.tar rozpakowuje plik tar tar -xvzf nazwa.tar.gz rozpakowuje plik skompresowany w postaci tar.gz tar -xvjf nazwa.tar.bz2 rozpakowuje plik skompresowany w postaci bzip2 rpm -ivh nazwa.rpm instalacja pakietu rpm (RedHat, Fedora itp.) rpm -e nazwa.rpm odinstalowanie pakietu rpm (j/w.) dpkg -opcja nazwa.deb operacje na paczkach debiana, opcje:     -i - instalacja,     -r - usunięcie sh plik_binarny uruchomienie aplikacji binarnej (plik może mieć rozszerzenie *.run) apt-get install nazwa_pakietu Instalacja pakietu *.deb w Debianie apt-cache search fragm_nazwy Odnajdowanie zainstalowanego pakietu w Debianie