Programowanie w systemie UNIX
|
|
- Kazimiera Stachowiak
- 7 lat temu
- Przeglądów:
Transkrypt
1 Programowanie w systemie UNIX CELE: dr inż. Paweł TURCZA Celem przedmiotu jest zapoznanie studenta z metodami i narzędziami wykorzystywanymi w tworzeniu oprogramowania dla systemów UNIX i Linux. Program: 1) elementy UNIX-a: system plików, shell 2) narzędzia służące kompilacji i testowaniu programów (gcc, make, gdb) 3) procesy, wątki, synchronizacja, komunikacja między procesami (mpi) 4) komunikacja z wykorzystaniem protokół TCP/IP 5) korzystanie z urządzeń w systemach unixowych 6) biblioteka Qt + zaawansowane konstr. języka C++ (funkcje virtualne, polimorfizm, szablony, STL) 7) Python Literatura M. Kerrisk, The Linux Programming interface (A Linux and UNIX System Programming Handbook) N. Matthew, R. Stones, Beginning Linux Programming, 3ed B Eckel, Thinking in C++, 2nd ed. Volume 1 & 2 M. Bach, Budowa systemu operacyjnego UNIX M. Rochkind, Programowanie w systemie UNIX dla zaawansowanych
2 Historia systemów UNIX 1969 pierwsza implementacja wykonana przez Kena Thompson'a w Bell Laboratories w assemblerze (PDP-7) nowe idee drzewiasty system plików program powłoki (shell) do interpretacji komend użytkownika pojęcie pliku jako ciągu bajtów Kolejne wydania: First Ed., listopad 1971: Second Ed., czerwiec 1972: Third Ed., luty 1973: Fourth Ed., listopad 1973: Fifth Ed., czerwiec 1974: Sixth Ed., maj 1975: (MULTICAST) kompilator FORTRAN'u programy: ar, cat, chmod, chown, cp, dc, ed, find, ln, ls, mail, mkdir, mv, rm, sh, su, and who. działa na 10 maszynach należących do AT&T. kompilator języka C i mechanizm potoków. pierwsza wersja napisana w języku C system działa na 50 maszynach. pierwsza wersja używana poza AT&T.
3 Zadania systemu operacyjnego Zadaniem systemu operacyjnego jest zarządzanie zasobami systemu komputerowego: zarządzanie procesami: UNIX implementuje tzw. preemptive multitasking tzn. wielozadaniowość z wywłaszczaniem tworzenie i uśmiercanie procesów: ładowanie do pamięci obrazu programu i przydział niezbędnych zasobów. zwolnienie zasobów po zakończeniu działania zadania zarządzanie pamięcią: mechanizm pamięci virtualnej Izolacja przestrzeni pamięciowych procesów od siebie, a także od przestrzeni jądra. Procesy nie mogą czytać ani modyfikować obszarów pamięci nie należących do nich. Stronicowanie - w pamięci fizycznej znajduje się tylko fragment kodu i danych każdego z zadań. Mechanizm ten pozwala to na lepsze wykorzystanie CPU, bo fragment programu, który ma być wykonywany najprawdopodobniej znajduje się już w pamięci operacyjnej. udostępnianie urządzeń systemowych: jądro dostarcza sterowników i spójnego API do urządzeń zainstalowanych w systemie kontrola dostępu do tychże urządzeń
4 Zadania systemu operacyjnego (c.d.) obsługa sieci: jądro wysyła i odbiera pakiety sieciowe na rzecz danego procesu kieruje (routing) pakiety do systemu docelowego dostarcza API dla tzw. wywołań systemowych: proces może żądać od systemu wykonania jakiegoś zadania Z punktu widzenia użytkownika zadaniem systemu operacyjnego jest dostarczenia abstrakcji wirtualnego osobistego komputera. Programy Aplikacje Shell narzędziowe Biblioteka funkcji systemowych Jądro systemu operacyjnego Sprzęt Użytkownicy Sterowniki Warstwowa struktura systemu
5 Główne podsystemy jądra Linux'a Architektura jądra Wirtualny system plików
6 Struktura plików w Linuxie Typy plików: pliki zwykłe, urządzenia (devices), potoki (pipes), gniazdka (sockets), katalogi (directories), i linki (symbolic links). Uniwersalny system I/O: do operacji na plikach i urządzeniach służą te same funkcje open(), read(), write(), close(), i ioctl() /dev/console /dev/tty /dev/null - konsola systemowa - terminal kontrolny procesu - pożeracz
7 Struktura plików w Linuxie (2) # mount -t iso9660 /dev/hdc /mnt/cdrom # cd /mnt/cdrom $ echo do not want to see this >/dev/null $ cp /dev/null empty_file Deskryptor pliku: mała nieujemna liczb całkowita 0-stdin, 1-stdout, 2-stderr Urządzenia w Linuxie dzielone są na blokowe i znakowe
8 Prawa dostępu do plików Nadawanie i sprawdzanie praw dostepu: % chmod u=rw,g=r,o=x plik_testowy % ls -l plik_testowy -rw-r----x 1 pt users 0 Oct 11 09:27 plik_testowy Uwaga: użytkownik i członkowie jego grupy nadal maja prawo czytania pliku, prawo do wykonywania mają pozostali użytkownicy % chmod u=wx,g=r,o=x plik_testowy właściciel zyskał prawo do wykonywania, ale stracił do czytania??? Prawa dostępu kodowane ósemkowo (read=4, write=2, execute=1): % chmod 751 plik_testowy % ls -l plik_testowy -rwxr-x--x 1 pt users 21 Oct 11 09:31 plik_testowy % umask -S u=rwx,g=rx,o=rx The -S option causes the mask to be printed in symbolic form % umask 0022 % touch nowy_plik % ls -l nowy_plik -rw-r--r-- 1 pt users 0 Oct 11 09:40 nowy_plik Uwaga: przy tworzeniu zwykłych plików bit prawa wykonywania jest automatycznie kasowany.
9 % umask 0077 #zabezpiecza przed tworzeniem plików do których miałby dostęp ktoś poza #użytkownikiem (właścicielem) Co oznacza prawo do wykonania dla katalogu? % mkdir tmp % touch tmp/plik % ls -l tmp -rw-r--r-- 1 pt users 0 Oct 11 11:17 plik % chmod 600 tmp % ls -l tmp -?????????????? plik utwórzmy tmp/plik z poniższą zawartością echo '#!/bin/sh' > tmp/plik echo 'echo xyz' >> tmp/plik % chmod 300 tmp #prawo do pisania i wykonania (WX), brak R % ls -l tmp ls: cannot open directory tmp: Permission denied tmp/plik #plik można wykonać, jeśli się o nim wie
10 Struktura plików w Linuxie(3) funkcje read, write Deskryptor pliku mała liczba całkowita zwracana przez funkcję open. int open(const char *path, int oflags); int open(const char *path, int oflags, mode_t mode); Drugi parametr funkcji open może przyjmować: O_RDONLY (tylko czytanie), O_WRONLY (tylko pisanie), lub O_RDWR (czytanie i pisanie) O_APPEND tryb dopisywania O_TRUNC obetnij długość do 0 O_CREAT utwórz Ostatni parametr funkcji open to 9 bitów praw dostępu dla tworzonego pliku (np. ósemkowo 0755).
11 Struktura plików w Linuxie (3) #include <unistd.h> //intro/write.c #include <stdlib.h> int main() { if ((write(1, "Here is some data\n", 18))!= 18) write(2, "A write error has occurred on file descriptor 1\n",46); exit(0); } Demonstracja mechanizmu przekierowania wyjścia (poprzez uruchomienie powyższego programu w różny sposób a.out >output a.out >output 2>&1 # bez spacji pomiędzy 2 a > a.out 1>stdio # bez spacji pomiędzy 1 a > a.out 2>stderr # bez spacji pomiędzy 2 a >
12 Struktura plików w Linuxie(3) funkcje read, write #include <fcntl.h> #include <stdio.h> #define BUFSIZE 1 int main() /* copy input to output */ { char buf[bufsize]; int n; } //intro/copy.c int fd = open("./rw.c", O_RDONLY); if(fd<0) { printf("open: blad"); return -1; } while ((n = read(fd, buf, BUFSIZE)) > 0) write(1, buf, n); n = read(fd, buf, BUFSIZE); printf("n=%d", n); Funkcja read zwraca liczbę faktycznie przeczytanych bajtów. W przypadku końca pliku jest to 0. Wartością -1 oznacza błąd. Kod błędu umieszczany jest w zmiennej errno (#include <errno.h>). Drugi parametr funkcji open może przyjmować: O_RDONLY (tylko czytanie), O_WRONLY (tylko pisanie), lub O_RDWR (czytanie i pisanie) O_APPEND tryb dopisywania O_TRUNC obetnij długość do 0 O_CREAT utwórz Ostatni parametr funkcji open to 9 bitów praw dostępu dla tworzonego pliku (np. ósemkowo 0755).
13 #include <stdio.h> #include <fcntl.h> #include <errno.h> #include <string.h> Struktura plików w Linuxie (4) //intro/open_dir.c #define BUFSIZE 1 main() /* próba czytania z katalogu */ { int fd = open("..", O_RDONLY); printf("fd=%d\n", fd); if(fd==-1) { printf("errno=%d: %s\n", errno, strerror(errno)); } char buf[bufsize]; int n; while ((n = read(fd, buf, BUFSIZE)) > 0) write(1, buf, n); } if(n==-1) { printf("errno=%d: %s\n", errno, strerror(errno)); }
14 Struktura plików w Linuxie (4) Gdy tworzymy nowy plik (O_CREAT) należy dodatkowo określić mu prawa dostępu (pole mode) za pomocą poniższych flag lub za pomocą liczby ósemkowej, jak poprzednio S_IRUSR: Read permission, owner S_IWUSR: Write permission, owner S_IXUSR: Execute permission, owner S_IRGRP: Read permission, group S_IWGRP: Write permission, group S_IXGRP: Execute permission, group S_IROTH: Read permission, others S_IWOTH: Write permission, others S_IXOTH: Execute permission, others open ( myfile, O_CREAT, S_IRUSR S_IXOTH); $ ls -ls myfile 0 -r -x 1 pt users 0 Sep 22 08:11 myfile Po pliku możemy się poruszać off_t lseek(int fildes, off_t offset, int whence); SEEK_SET SEEK_CUR SEEK_END
15 Informacji o danym pliku dostarczają: #include <unistd.h> #include <sys/stat.h> Struktura plików w Linuxie (5) int fstat(int fildes, struct stat *buf); int stat(const char *path, struct stat *buf); //info about the file to which the link refers int lstat(const char *path, struct stat *buf); //info about the link itself The lstat function is like stat, except that if the file referred to is a symbolic link, lstat tells about the link, not the file to which it refers.
16 Struktura plików w Linuxie (6) File type flags (st_mode) S_IFBLK: is a block special device S_IFDIR: is a directory S_IFCHR: is a character special device S_IFIFO: is a FIFO (named pipe) S_IFREG: is a regular file S_IFLNK: is a symbolic link File type makra (st_mode) S_ISBLK: Test for block special file S_ISCHR: Test for character special file S_ISDIR: Test for directory S_ISFIFO: Test for FIFO S_ISREG: Test for regular file S_ISLNK: Test for symbolic link Przykład użycia struct stat statbuf; mode_t modes; stat("myfile",&statbuf); modes = statbuf.st_mode; intro/fstat.c File type masks (st_mode) S_IFMT: File type S_IRWXU: User R/W/X permissions S_IRWXG: Group R/W/X permissions S_IRWXO: Others R/W/X permissions if(!s_isdir(modes) ) printf("not dir"); if( modes & S_IWGRP ) printf("s_iwgrp \n");
17 Struktura plików w Linuxie (7) (File and Directory Maintenance) #include <sys/stat.h> int chmod(const char *path, mode_t mode); int chown(const char *path, uid_t owner, gid_t group); int unlink(const char *path); int link(const char *path1, const char *path2); int symlink(const char *path1, const char *path2); int mkdir(const char *path, mode_t mode); int rmdir(const char *path); int chdir(const char *path); char *getcwd(char *buf, size_t size); // change the permissions // change the owner //hard link //soft link // change directory // current working directory (Scanning Directories) #include <dirent.h> DIR *opendir(const char *name); struct dirent *readdir(dir *dirp); closedir(dir *); //Struktura dirent zawiera m.in. następujące pola: ino_t d_ino: //The inode of the file char d_name[]: //The name of the file Przykład: intro/lsdir.c
18 System plików /proc W Linuxie istnieje specjalny system plików procfs (w pamięci nie na dysku). System ten dostępny jest zwykle w katalogu /proc. Zawiera on pliki specjalne, które służą do udostępniania informacji o stanie systemu. Programy, mogą odczytywać lub zapisywać te pliki stosownie do potrzeb i posiadanych uprawnień. $ cat /proc/cpuinfo $ cat /proc/meminfo $ cat /proc/version $ cat /proc/net/sockstat $ cat /proc/sys/fs/file-max $ ls -l /proc/4991 $ od -c /proc/4991/cmdline #od - dump files in octal and other formats $ ls /proc/4991/fd $ ls diff oldfilelist # porównaj wynik komendy ls z zawartością pliku $ ls diff /dev/fd/0 oldfilelist #/dev/fd/0 deskryptor standardowego wejścia
Obsługa plików. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 25 września 2011
Obsługa plików Systemy Operacyjne 2 laboratorium Mateusz Hołenko 25 września 2011 Plan zajęć 1 Pliki w systemie Linux i-węzły deskryptory plików 2 Operacje na plikach otwieranie i zamykanie zapis i odczyt
Bardziej szczegółowoSystemy Operacyjne ZAAWANSOWANE OPERACJE WEJŚCIA-WYJŚCIA DLA PLIKÓW
Systemy Operacyjne ZAAWANSOWANE OPERACJE WEJŚCIA-WYJŚCIA DLA PLIKÓW Zajęcia 2 - Podstawowe operacje wejścia-wyjścia dla plików 1 Pozyskiwanie i wyświetlanie metadanych pliku 2 Wejście/wyjście asynchroniczne
Bardziej szczegółowoLaboratorium Systemów Operacyjnych. Ćwiczenie 4. Operacje na plikach
Laboratorium Systemów Operacyjnych Ćwiczenie 4. Operacje na plikach Wykonanie operacji wymaga wskazania pliku, na którym operacja ma zostać wykonana. Plik w systemie LINUX identyfikowany jest przez nazwę,
Bardziej szczegółowoPliki. Funkcje tworzące pliki i operujące na nich opisane są w części 2 pomocy systemowej. Tworzenie i otwieranie plików:
Pliki W celu wykonania jakiejkolwiek operacji na istniejącym pliku, plik ten musi zostać otwarty, natomiast jeśli plik jeszcze nie istnieje, to musi zostać utworzony. Plik może zostać otwarty w trybie:
Bardziej szczegółowoOperacje powiązane z systemem:
PLIKI Operacje powiązane z systemem: funkcje biblioteczne stand. biblioteki C, libc; wykonywane jak wywołania innych funkcji; mogą wywoływać inne funkcje lub wywołania systemowe) wywołania systemowe zaimplementowane
Bardziej szczegółowoŁącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi.
Przykład: $ ls more Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi. Tworzenie łącza #include int pipe(int filedes[2]); Przykład: int
Bardziej szczegółowoObsługa plików Procesy
Obsługa plików Procesy Systemy Operacyjne 2 laboratorium Mateusz Hołenko 15 października 2011 Plan zajęć 1 Obsługa plików 1 Pliki w systemie Linux i-węzły deskryptory plików 2 Operacje na plikach 3 Operacje
Bardziej szczegółowoLaboratorium z systemów operacyjnych. System plików - funkcje systemowe. Anna Wojak
Laboratorium z systemów operacyjnych System plików - funkcje systemowe Anna Wojak 1 Zagadnienia do samodzielnego przygotowania: podstawowe polecenia linux, podstawy programowania w jezyku C, deskryptor
Bardziej szczegółowoObsługa plików. 6. Pliki 2005/2005
Obsługa plików Dwa poziomy obsługi plików: standardowa biblioteka we-we niskopoziomowa biblioteka we-wy Standardowa biblioteka we-we wchodzi w skład języka C, określona jest w standarcie ANSI C, dostępna
Bardziej szczegółowoTemat zajęć: Obsługa systemu plików.
Temat zajęć: Obsługa systemu plików. Czas realizacji zajęć: 90 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: I. Operacje na plikach zwykłych. Tworzenie i otwieranie plików, deskryptory
Bardziej szczegółowoEgzamin pisemny z przedmiotu: Systemy operacyjne Semestr I
Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I Uwaga: Test odnosi się do systemu operacyjnego Linux! 1) Linux jest systemem wielodostępnym, co oznacza, że: a) pozwala na logowanie się do systemu
Bardziej szczegółowoLinux Kernel III. Character devices
Linux Kernel III Character devices Urządzenia systemu Linux (I) Character device Block device Network device Do urządzenia piszemy jak do pliku, Dozwolone działania: open, close, read, write, Np. /dev/tty1.
Bardziej szczegółowoLinux Kernel. Wprowadzenie
Linux Kernel Wprowadzenie Trochę historii (1) Rozpoczęło się od Bell Labolatories we wczesnych latach 70- tych XX wieku, kiedy rozpoczęto prace nad systemem UNIX: UNIX był pierwszym systemem operacyjnym
Bardziej szczegółowoKurs systemu Unix wykład wstępny. Kurs systemu Unix 1
Kurs systemu Unix wykład wstępny Kurs systemu Unix 1 Cele wykladu Zdobycie podstawowej wiedzy o systemie i jego narzędziach. Poznanie unixowych języków skryptowych (bash, awk,...). Nauka programowania
Bardziej szczegółowo4. Komunikacja pomiędzy procesami przez łącza nienazwane i nazwane
Jędrzej Ułasiewicz Łącza nienazwane, nazwane, funkcja select 1 4. Komunikacja pomiędzy procesami przez łącza nienazwane i nazwane Łącza nienazwane (ang. Unnamed Pipes) i nazwane (ang. Named Pipes) - jedna
Bardziej szczegółowoWykład 3: Implementacja programów wbudowanych
Systemy wbudowane Wykład 3: Implementacja programów wbudowanych Problemy implementacji oprogramowania wbudowanego Szeregowanie zadań System operacyjny Obsługa przerwań 10/16/2010 S.Deniziak:Systemy wbudowane
Bardziej szczegółowo4.2 Sposób korzystania z l acza
4.2 Sposób korzystania z l acza 31 Opis programu: Program procesu potomnego (linie 16 19) jest taki sam, jak w przyk ladzie na listingu 3. W procesie macierzystym nastepuje z kolei przekierowanie standardowego
Bardziej szczegółowo2. System uprawnień w linuxie
2. System uprawnień w linuxie Uprawnienia do plików: -rw-r--r-x 1 pawelza students 0 Lis 17 08:21 plik Mamy tutaj trzy grupy uprawnień: -rw - dla właściciela (owner, oznaczany też "user" reprezentowany
Bardziej szczegółowoBASH - LINIA POLECEŃ. Bioinformatyka 2018/2019
BASH - LINIA POLECEŃ Bioinformatyka 2018/2019 PODSTAWOWE DEFINICJE Linux system operacyjny, które oferuje kompletne środowisko programistyczne Powłoka interfejs wiersza poleceń zapewniający komunikację
Bardziej szczegółowoPRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE
PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE Magda Mielczarek Pracownia Informatyczna 2015/2016 1 Podstawowe definicje Linux system operacyjny, które oferuje kompletne środowisko programistyczne
Bardziej szczegółowoPodstawy systemów UNIX
Podstawy systemów UNIX Autor: Maciej Friedel Zajęcia prowadzone dla Polskiej Szkoły IT Wrocław, 2008 Struktura systemu UNIX POWŁOKA (SHELL) JĄDRO SPRZĘT Pracę całego systemu koordynuje
Bardziej szczegółowoLinux cz.3: polecenia systemowe, ćwiczenia
Linux cz.3: polecenia systemowe, ćwiczenia Wykład: polecenia terminala, manualia systemowe, uprawnienia, kompresja, archiwizacja, ukrywanie plików, sudo su, ps, kill, chmod, chown, tar, gzip, whoami, ls,
Bardziej szczegółowoZnaki globalne w Linuxie
Znaki globalne w Linuxie * reprezentuje jeden lub wiele znaków (wild-card character)? reprezentuje dokładnie jeden znak (wild-card character) [abcde] reprezentuje dokładnie jeden znak z wymienionych [a-e]
Bardziej szczegółowoWybrane funkcje systemowe Unixa
Wybrane funkcje systemowe Unixa Witold Paluszyński witold.paluszynski@pwr.wroc.pl http://sequoia.ict.pwr.wroc.pl/ witold/ Copyright c 2000 2006 Witold Paluszyński All rights reserved. Niniejszy dokument
Bardziej szczegółowo"Klasyczna" struktura systemu operacyjnego:
"Klasyczna" struktura systemu operacyjnego: Użytkownik Powłoka (shell) Programy użytkowe Programy systemowe API Jądro (kernel) Programy obsługi sprzętu (drivers) Sprzęt Funkcje systemu operacyjnego obsługa
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowoLinux: System Plików
Linux: System Plików Systemy Operacyjne Mateusz Hołenko 3 marca 2013 Plan zajęć Wszystko jest plikiem Obsługa systemu plików Prawa dostępu Wyszukiwanie Mateusz Hołenko Linux: System Plików [2/24] Wszystko
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowoSystemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak
Systemy operacyjne System operacyjny Linux - wstęp Anna Wojak 1 1 Wstęp Linux jest systemem z rodziny Unix. Pierwsza wersja systemu została opracowana w 1969 roku przez K.Thompsona i D.Ritchie Jest to
Bardziej szczegółowoPROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO
PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino Interrupts Mariusz Rudnicki 2016 Wstęp W QNX Neutrino wszystkie przerwania sprzętowe przechwytywane są przez jądro systemu. Obsługę
Bardziej szczegółowoSystem operacyjny Linux wybrane zagadnienia. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu
System operacyjny Linux wybrane zagadnienia Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Linux Open Source Stale rozwijany Darmowy (wersje niekomercyjne) Bezpieczny Stabilny
Bardziej szczegółowoProcesy i potoki. S. Samolej: Procesy
Procesy i potoki dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/ oraz
Bardziej szczegółowoSystem operacyjny UNIX system plików. mgr Michał Popławski, WFAiIS
System operacyjny UNIX system plików System plików systemu UNIX (s5fs) System plików ma strukturę drzewa. Na samym szczycie znajduje się korzeń (root), symbolicznie przedstawiany jako /. Z punktu widzenia
Bardziej szczegółowoJ. Ułasiewicz Łącza nienazwane, nazwane, select 1
J. Ułasiewicz Łącza nienazwane, nazwane, select 1 4. Komunikacja pomiędzy procesami przez łącza nienazwane i nazwane Łącza nienazwane (ang. Unnamed Pipes) i nazwane (ang. Unnamed Pipes) - jedna z historycznie
Bardziej szczegółowoKolejki FIFO (łącza nazwane)
Kolejki FIFO (łącza nazwane) Systemy Operacyjne 2 laboratorium Mateusz Hołenko 6 listopada 2011 Plan zajęć 1 Łącza w systemie Linux kolejki FIFO vs. potoki specyfika łączy nazwanych schemat komunikacji
Bardziej szczegółowoPobieranie argumentów wiersza polecenia
Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:
Bardziej szczegółowoBASH - WPROWADZENIE Bioinformatyka 4
BASH - WPROWADZENIE Bioinformatyka 4 DLACZEGO BASH? Praca na klastrach obliczeniowych Brak GUI Środowisko programistyczne Szybkie przetwarzanie danych Pisanie własnych skryptów W praktyce przetwarzanie
Bardziej szczegółowoŁącza nienazwane(potoki)
8. Łącza nienazwane(potoki) Łącze (potok, ang. pipe) jest to urządzenie komunikacyjne pozwalające na przesyłanie informacji w jedną stronę. Jeden proces wysyła dane do łącza za pomocą funkcji write, zaś
Bardziej szczegółowoSzkolenie AGH Linux. Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;)
Szkolenie AGH Linux Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;) O mnie Imię i nazwisko: Pieczyrak Paweł Kryptonim: Morfeusz888 Osiągnięcia Administrator pomocniczy na publicznym
Bardziej szczegółowoPrawa dostępu do plików
Prawa dostępu do plików Wszystkie pliki systemów uniksowych posiadają swoje prawa dostępu dla zapisu, odczytu i wykonywania. Jeżeli dotychczas spotykałeś się z systemami Windows na partycjach FAT - możesz
Bardziej szczegółowoWarstwy systemu Windows 2000
Warstwy systemu Windows 2000 Tryb użytkownika (User Mode) Tryb jądra (Kernel Mode) Tryb użytkownika (User Mode) Zarządzanie pamięcią wirtualną Cechy charakterystyczne systemu Windows XP: system bardzo
Bardziej szczegółowoWstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików
Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-10-08 Co to jest konsola / terminal UNIX-owy?
Bardziej szczegółowoTemat zajęć: Obsługa łączy komunikacyjnych
Temat zajęć: Obsługa łączy komunikacyjnych Czas realizacji zajęć: 180 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: I. Łącza komunikacyjne Potoki nienazwane, potoki nazwane, przykłady
Bardziej szczegółowoPodstawy informatyki
Podstawy informatyki WYKŁAD nr 02 Fizyka Techniczna, WFT PP Michał Hermanowicz Zakład Fizyki Obliczeniowej, Instytut Fizyki, Politechnika Poznańska Rok akademicki 2018/2019 M. Hermanowicz (IF PP) Podstawy
Bardziej szczegółowoUNIX SYSTEM PLIKÓW. UNIX System plików
UNIX SYSTEM PLIKÓW UNIX System plików UNIX SYSTEM PLIKÓW Jednym z podstawowych zadań SO jest zarządzanie zasobami danych Komputer może być wyposażony w różnego rodzaju urządzenia przechowujące dane i programy
Bardziej szczegółowoPracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA
Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA 1 Organizacja zajęć ½ semestru mgr Magda Mielczarek Katedra Genetyki, pokój nr 14 e-mail: magda.mielczarek@up.wroc.pl tel: 71-320-57-51 Slajdy
Bardziej szczegółowoOperatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie
Linux Polecenia Opracował: Andrzej Nowak Operatory zmiany sposobu przypisania standardowych strumieni >,> Przykłady: 2> plik przypisuje standardowe wyjście błędów do pliku, 1>&2 przypisanie standardowe
Bardziej szczegółowoJądro Powłoka System plików Programy użytkowe
LINUX Jądro Powłoka System plików Programy użytkowe / tmp etc dev bin usr home proc bin lib ułatwienia pliki ukryte pol1;pol2 pol1 \ arg1 \ arg2 ~/.. $HOME.nazwa ls -a metaznaki *? [.] maskowanie
Bardziej szczegółowoPracownia Komputerowa wykład II
Pracownia Komputerowa wykład II dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada 1 Systemy operacyjne! Windows np. Windows 8.! Systemy unixowe:! Linux i Mac OS X 2 Logowanie na konta studenckie!
Bardziej szczegółowoSystem plików Linuxa. Tomasz Borzyszkowski
System plików Linuxa Tomasz Borzyszkowski Diagram blokowy jądra systemu Programy użytkowników Poziom użytkownika Poziom jądra Biblioteki Interfejs funkcji systemowych Podsystem plików Bufor Znakowe Blokowe
Bardziej szczegółowoSystemy Operacyjne - Operacje na plikach
Systemy Operacyjne - Operacje na plikach Andrzej Stroiński Institute of Computer Science Poznań University of Technology 1 październik, 2012 Wprowadzenie do ANSI-C Pomoc systemowa man gcc man 2 write man
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej
Bardziej szczegółowoSYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Bardziej szczegółowoPracownia Komputerowa wyk ad II
Pracownia Komputerowa wykad II dr Magdalena Posiadaa-Zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Systemy operacyjne Windows np. Windows 8. Systemy
Bardziej szczegółowoSYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)
Procesy i shell. Polecenia ps, sleep, exit, jobs, bg, fg, top, kill, bash, tcsh, which, type, whereis, touch. Metaznak & i >>. Dowiązania miękkie i twarde. Proces jest programem, który jest wykonywany
Bardziej szczegółowoPodstawy Programowania.
Podstawy Programowania http://www.saltbox.com/img/under_the_hood.png O mnie... dr inż. Łukasz Graczykowski Zakład Fizyki Jądrowej Wydział Fizyki Politechniki Warszawskiej lgraczyk@if.pw.edu.pl www.if.pw.edu.pl/~lgraczyk/wiki
Bardziej szczegółowoaodczytywać zniegoza pomoc afunkcjiread, (niebuforowane funkcje wejścia/wyjścia). e sukcesem, to zwróci liczb, erzeczywiściezapisanychbajtów.
c Wies law P laczek 15 4 Potoki 4.1 Wprowadzenie Potok (ang. pipe) możnauznaćzaplikspecjalnegotypuktórys lużydoprzechowywania ograniczonej ilości danych i do którego dost ep może si eodbywaćjedyniewtrybie
Bardziej szczegółowoPRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE
PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE M.Mielczarek Pracownia Informatyczna 2017/2018 1 PRACOWNIA INFORMATYCZNA PROWADZĄCY: Dr Magda Mielczarek (biolog) Katedra
Bardziej szczegółowoTworzenie oprogramowania
Tworzenie oprogramowania Język C Budowa programu napisanego w języku C podział na pliki z definicjami funkcji, korzystanie z bibliotek systemowych i własnych automatyzacja kompilacji za pomocą make dzielenie
Bardziej szczegółowoSystemy operacyjne. część 1. Artur Gramacki Instytut Informatyki i Elektroniki. Zalecana literatura
Systemy operacyjne część 1 Artur Gramacki Instytut Informatyki i Elektroniki Zalecana literatura 1. Abraham Silberschatz, Peter B. Galvin, Greg Gagne, Podstawy systemów operacyjnych, WNT Warszawa, 2005,
Bardziej szczegółowoBiblioteka standardowa - operacje wejścia/wyjścia
Biblioteka standardowa - operacje wejścia/wyjścia Przemysław Gawroński D-10, p. 234 Wykład 6 15 stycznia 2019 (Wykład 6) Biblioteka standardowa - operacje wejścia/wyjścia 15 stycznia 2019 1 / 14 Outline
Bardziej szczegółowoNarzędzia informatyczne w językoznawstwie
Narzędzia informatyczne w językoznawstwie Wiersz poleceń - Potoki i pliki wsadowe Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 22. października 2008 Marcin
Bardziej szczegółowoWstęp do systemów wielozadaniowych laboratorium 03 Praca z plikami, c.d.
Wstęp do systemów wielozadaniowych laboratorium 03 Praca z plikami, c.d. Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2012-10-09 Kolokwium I. 2012-10-30 (wtorek), godz.
Bardziej szczegółowoSystemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier
Systemy operacyjne Instrukcja laboratoryjna Ćwiczenie 1: Polecenia systemu UNIX/LINUX Opracował: dr inż. Piotr Szpryngier Olsztyn 2009 1 Wprowadzenie. Cel zajęć praktycznych. Wymagania stawiane studentom
Bardziej szczegółowoSystemy Operacyjne. Ćwiczenia
Systemy Operacyjne Ćwiczenia Sprawy organizacyjne Kontakt: Artur.Basiura@agh.edu.pl Konsultacje po uzgodnieniu mailowym terminu Prośba o kontakt mailowy do jednej osoby z grupy (zmiany w terminach zajęć)
Bardziej szczegółowoZajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej
Zajęcia nr 1 Podstawy programowania dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Ramowy program warsztatów 1. Pierwsze: Podstawy programowania 2. Drugie:
Bardziej szczegółowoIteracyjny serwer TCP i aplikacja UDP
Iteracyjny serwer TCP i aplikacja UDP Iteracyjny serwer TCP Funkcje wywoływane przez serwer TCP socket() - bind() - listen() - accept() - read() / write() - close() socket() Creates an endpoint for communication
Bardziej szczegółowoSystem plików Linuksa
Łódzka Grupa Użytkowników Linuksa Studenckie Koło Naukowe PŁ Strona 1 z 15 System plików Linuksa Bartłomiej Świercz 20 maja 2002 roku Strona 1 z 15 1. Wstęp Podstawowymi składnikami jądra Linux a są: moduł
Bardziej szczegółowoSystemy Operacyjne I: System plików
Politechnika Poznańska 18 marca 2014 Materiały Prezentacja oraz inne materiały zostały przygotowane na podstawie: Użytkowanie systemu operacyjnego UNIX - dr D.Wawrzyniak Systemy operacyjne - skrypt - dr
Bardziej szczegółowoUniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2009/2010
Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/semestr 2(rok)/(sem) Specjalność Bez specjalności Kod katedry/zakładu w systemie USOS 10000000
Bardziej szczegółowo<stdio.h> <iostram> input. FILE *stdin. std::cin output. std::cout error. FILE *stdout. FILE *stderr
z przedmiotu, prowadzonych na Wydziale BMiI, Akademii Techniczno-Humanistycznej w Bielsku-Białej. Rodzina systemów POSIX zaopatrzona została w mechanizm tworzenie międzyprocesowych łączy komunikacyjnych
Bardziej szczegółowoPliki, potoki, sygnały
Pliki, potoki, sygnały dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć
Bardziej szczegółowoW pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)
Ćwiczenie 2 Cel ćwiczenia: Poznanie mechanizmów wejścia/wyjścia, zapoznanie się ze sposobami wyświetlania plików tekstowych i wyszukiwania informacji, podstawowe operacje na plikach tekstowych, zmienne
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411b Plan wykładu Operacje wejścia-wyjścia Dostęp do plików Struktury
Bardziej szczegółowoBash - wprowadzenie. Bash - wprowadzenie 1/39
Bash - wprowadzenie Bash - wprowadzenie 1/39 Bash - wprowadzenie 2/39 Czym jest bash? Rysunek : Zadanie powłoki to ukrycie wywołań systemowych Bash - wprowadzenie 3/39 Czym jest bash? Przykład polecenia:
Bardziej szczegółowoWprowadzenie do obsługi systemów obliczeniowych PCSS
Wprowadzenie do obsługi systemów obliczeniowych PCSS Marcin Pospieszny Poznańskie Centrum Superkomputerowo-Sieciowe 17 listopada 2011 Plan prezentacji 1 Architektura maszyn 2 Linux: podstawy 3 PBS 4 Aplikacje
Bardziej szczegółowoSystem komputerowy. System komputerowy
System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,
Bardziej szczegółowoStruktury. Przykład W8_1
Struktury Struktury pozwalają na grupowanie zmiennych różnych typów pod wspólną nazwą. To istotnie ułatwia organizacje danych, które okazują się w jednym miejscu kodu programu. To jest bardzo ważne dla
Bardziej szczegółowoSystem plików warstwa logiczna
Dariusz Wawrzyniak Pojęcie u Plik jest abstrakcyjnym obrazem informacji gromadzonej i udostępnianej przez system komputerowy. Plik jest podstawową jednostką logiczną magazynowania informacji w systemie
Bardziej szczegółowoPowłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.
Powłoka I Popularne implementacje W stylu sh (powłoki zdefiniowanej w POSIX) bash (najpopularniejsza) zsh ksh mksh W stylu csh csh tcsh 12 października 2018 1 / 16 Powłoka II Zachęta Komunikuje się z użytkownikiem
Bardziej szczegółowohost name: 192.168.11.110 protokół SSH System plików - wprowadzenie Ścieżki dostępu
Ćw. 13 Linux - operacje systemu plików 1. Ściągnąć program PUTTY ze strony z materiałami dydaktycznymi - zapisać, rozpakować skompresowany plik i uruchomić. 2. Skonfigurować host name: host name: 192.168.11.110
Bardziej szczegółowoKomunikacja za pomocą potoków. Tomasz Borzyszkowski
Komunikacja za pomocą potoków Tomasz Borzyszkowski Wstęp Sygnały, omówione wcześniej, są użyteczne w sytuacjach błędnych lub innych wyjątkowych stanach programu, jednak nie nadają się do przekazywania
Bardziej szczegółowoOperacje na plikach. Informatyka. Standardowe strumienie wejścia i wyjścia
Materiały Operacje na plikach Informatyka Operacje wejścia-wyjścia w C/C++: Podejście proceduralne Podejście obiektowe Standardowe strumienie wejścia i wyjścia stdin - strumień wejściowy (klawiatura) cin
Bardziej szczegółowoSystem Linux - użytkowanie
System Linux - użytkowanie 1 Podstawowe operacje ls Listuje zawartość bieżącego katalogu ls -al more Listuje zawartość bieżącego katalogu, wszystkie pliki cd katalog Zmiana katalogu./nazwa_programu Uruchom
Bardziej szczegółowoPodstawy Programowania
Podstawy Programowania http://www.saltbox.com/img/under_the_hood.png Any sufficiently advanced technology is indistinguishable from magic. Arthur C. Clarke O mnie... dr inż. Małgorzata Janik Zakład Fizyki
Bardziej szczegółowoWykład 1
Wstęp do programowania 1 Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 1 Wprowadzenie Cel wykładów z programowania proceduralnego Wykład jest poświęcony językowi C i jego
Bardziej szczegółowoSystemy operacyjne Programowanie w języku powłoki sh
Systemy operacyjne Programowanie w języku powłoki sh [2] Programowanie w języku powłoki sh Powłoka, interpreter poleceń angshell jest programem uruchamianym standardowo po otwarciu sesji użytkownika przez
Bardziej szczegółowoSYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Klasyczne polecenia: ls [opcje][katalog][pliki] opcje podstawowe -a wyświetla również pliki ukryte -b znaki niedrukowane jako liczby ósemkowe -c sortuje dane zgodnie z datą zmiany -k podaje wielkość pliku
Bardziej szczegółowoPodstawy Informatyki. Michał Pazdanowski
Podstawy Informatyki Michał Pazdanowski 3 marca 2010 Michał Pazdanowski 2 Praca z komputerem Oprogramowanie: freeware - darmowe shareware - tanie commercial - kosztowne komputer system operacyjny aplikacja
Bardziej szczegółowoProgramowanie w językach
Programowanie w językach wysokiego poziomu Obsługa plików za pomocą strumieni Elektronika i Telekomunikacja, semestr III rok akademicki 2013/2014 dr inż. Paweł Myszkowski Plan zajęć a) otwieranie i zamykanie
Bardziej szczegółowoPliki. Informacje ogólne. Obsługa plików w języku C
Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych (np. dysku twardym, pendrive, płycie DVD itp.). Może posiadać określone atrybuty, a odwołanie do niego
Bardziej szczegółowoPodstawy Informatyki. Michał Pazdanowski
Podstawy Informatyki Michał Pazdanowski 30 grudnia 2006 Michał Pazdanowski 2 Praca z komputerem Oprogramowanie: freeware - darmowe shareware - tanie commercial - kosztowne komputer system operacyjny aplikacja
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie
Bardziej szczegółowoPROGRAMOWANIE w C prolog
PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania
Bardziej szczegółowoJ. Ułasiewicz Łącza nienazwane, nazwane, select 1
J. Ułasiewicz Łącza nienazwane, nazwane, select 1 4. Komunikacja pomiędzy procesami przez łącza nienazwane i nazwane Łącza nienazwane (ang. Unnamed Pipes) i nazwane (ang. Unnamed Pipes) - jedna z historycznie
Bardziej szczegółowoWstęp do informatyki Shell podstawy
Wstęp do informatyki Shell podstawy Podstawowe polecenia less plik(i) Przeglądaj interaktywnie zawartość plików. Można używać klawiszy kursora, PgDn, PgUp, etc. Koniec pracy (q), wyszukiwanie / Less is
Bardziej szczegółowoPliki. Informacje ogólne. Obsługa plików w języku C
Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych. Może posiadać określone atrybuty, a odwołanie do niego odbywa się poprzez nazwę. Każdy plik ma skończoną
Bardziej szczegółowo