Ćwiczenie 4 1 Potoki i strumienie


WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Potoki i strumienie
STRUMI E ( z angielskiego st ream )
Strum ie j est to pew nego rodzaj u "po czenie" m i dzy "nadaw c a
odbiorc " lub "odbiorc i nadaw c " o w ygl dzie nieprzerw anego ci gu
danych, celowo nie dzielonego na komunikaty.
Do otoczenia ka dego procesu nale t rzy strum ienie, uto sam iane z pewnym i
plikam i lub urz dzeniam i: wej ciowy, wynikowy i diagnostyczny.
Strum ie wej ciowy s u y m in. do czytania polece , param etrów itp. Do
strum ienia wynikowego zapisywane s wyniki dzia a ró nych program ów.
Natom iast do strum ienia diagnostycznego kierowane s inform acj e o b dach. Na
ogó wszystkie te t rzy strum ienie odpowiadaj konsoli ( tworz j m onitor i
klawiatura ) . Mo na to j ednak zm ieni przy pom ocy trzech znaków: > , > > , < .
I ch zadaniem j est kierowanie danych w inne m iej sca ni standardowe ( m onitor,
klawiatura). Przyk adowo dane wej ciowe m o na skierowa do zbioru na dysku,
drukarki.
" > " pozwala skierowa dane z konsoli do pliku "a.cpp> b.txt" ,
przekierowuj e wyj cie pliku * .cpp do pliku * .txt
">>" powoduj e dopisanie zawart o ci do istniej cego j u pliku
"b.cpp> > bb.txt", j e li plik bb.txt istniej e wyj cie pliku b.cpp
zostanie dopisane do niego
"< " znak m niej szo ci podaj e dane na wej cie polecenia- instrukcji
"[instrukcja]< - instrukcj i polecenia pom oc za bb.txt plik otwiera>
Oczywi cie m o em y m odyfikowa opcj e strumieni poprzez zagnie d enie
pewnych atrybutów.
Cz st o zdarza si , e zawarto plików dla uzyskania bardziej widocznych
rezultatów trzeba posortowa . Do tego celu s u y np: opcj a "SORT"
"sort<"bb.txt">nowy.txt"
efektem dzia ania wpisanej instrukcj i "nieuporz dkowany" plik bb.txt zam ieni sie
na posortowany plik o nazwie nowy.txt.
Sortowanie równie m o em y okre li np: Od naj m niej szej do naj wi kszej liczby
lub wedlug alfabetu, j est wiele opcj i ,ale o t ym szerzej w przyk adach dla
przetwarzania potokowego.
1
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Charakter standardowego wej cia i wyj cia wyra a si nast puj co:
m o liwa j est zm iana bie cego przyporz dkowania standardowego w
strum ienia we/ wy, konkretnem u urz dzeniowi lub plikowi;
m o liwe j est potokowe przetwarzanie inform acj i ( piping) , co wi e
si z u yciem specj alnego typu program ów przetwarzaj cych -
filtrów.
Korzy z tego przyporz dkowania ( przypisania urz dzenia lub pliku do
strum ienia) polega na tym , e program korzystaj cy ze standardowego we/ wy
staj e si program em uniwersalnym . Bez konieczno ci dokonywania zm ian
program u m o na w chwili wywo ania przekaza m u dane z dowolnego pliku lub
urz dzenia albo skierowa wyniki do dowolnego m iej sca.
Ró nica pom i dzy znakiem > a > > j est taka, e w pierwszym przypadku
istniej ce dane w pliku zost an skasowane, a w drugim przypadku dane zostan
dopisane na koniec j u istniej cych.
Gdy chcem y np. wys a dane do drukarki to w poleceniu nie m o em y u y s owa
"drukarka", gdy kom puter nie b dzie nas rozum ia . Nale y pos u y si w takim
wypadku specj alnym i sym bolam i, kt óre okre laj nam rodzaj urz dzenia. I tak
np.:
* z cza szeregowe to COM1 do COM4;
* synonim nazwy COM1 to AUX;
* z cza równoleg e to LPT1 do LPT3;
* drukarka to PRN;
* urz dzenie puste to NULL (Jest to urz dzenie logiczne, któremu nie odpowiada
adne urz dzenie fizyczne. W systemie operacyjnym pe ni on rol " mietnika
systemowego", do którego mo na kierowa niepotrzebne dane wyj ciowe.)
Mo liwo ci sterowania strum ieniam i danych m o na zastosowa do:
* wysy ania krótkich napisów i komunikatów na drukark ;
* zapisywania krótkich tekstów (wprowadzonych z klawiatury) bezpo rednio w
zbiorze dyskowym;
* blokowania napisów generowanych przez polecenie systemowe;
* wysy ania danych generowanych przez niektóre polecenia do drukarki lub zb.
dyskowego.
2
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
POTOK (z angielskiego pipe lub pipeline)
Potok j est to pew ien sposób na kom unikacj e, um o liw iaj cy
j ednokierunkow y przep yw danych, inform acj i m iedzy
adresow anym i( skoj arzonym i) procesam i. Zj aw isko potoku odbyw a si
na zasadzie st rum ienia, j est niezaw odne i kont rolow ane.
Sym bolem potoku zw yczaj ow o przyj t o poj edyncz pionow kresk
("|").
Typowe polecenie A | B tworzy potok ,"ni transfuzyj n " m iedzy program em A a
program em B, cz c standardowe wyj cie program u A ze standardowym
wej ciem program u B.
Przetwarzanie potokowe (z angielskiego pipelining)
I stniej dwie równie dobre definicj e okre laj ce wy ej wym ienione "zj awisko".
Pierwsza z nich m ówi, e przetwarzanie potokowe j est równoleg ym dzia aniem w
poszczególnych fazach danego cyklu rozkazowego. Który z uk adów procesora
potokowego wykonuj e j aki rozkaz, gdy kolej ny niezale ny uk ad tego procesora
w równoleg ym czasie pobiera nast pny rozkaz um ieszczony w pam i ci
operacyjnej , co znacznie podwy sza wydaj no procesora. "Stopie równoleg o ci
konstrukcj i procesorów wynosi od trzech do siedm iu niezale nych bloków
funkcj onalnych wykonuj cych jednocze nie pobranie rozkazu, jego
zdekodowanie, obliczenie adresu argum entu, pobranie argum entu, wykonanie
operacji i przechowanie wyniku".
Kolej n wcze niej wspom nian definicj przetwarzania j est ci g lub szereg
procesów w system ie UNI X lub unikspochodnym , których wej cia i wyj cia s
po czone w ten sposób, ze wyniki j ednego procesu s autom at ycznie kierowane
(akum ulowane) na wej cie nast pnego w kolej ce procesu.
Owe przet warzanie polega m iedzy innym i na skierowaniu strum ienia danych
"wyj ciowych" j ednego polecenia do innego w postaci st rum ienia danych
wej ciowych .
Przes anie standardowego wyj cia instrukcj i 1 j ako standardowego wej cia dla
instrukcj i 1, przyk adem tego m o e by takie proste sform u owanie:
"instrukcja 1 | instrukcja 2"
3
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Mo na wyró ni trzy podst awowe polecenia-instrukcj e w przetwarzaniu
potokowym:
"more" - jest odpowiedzialne za wy wietlanie kolej no st ron
zawarto ci pliku lub danych wyj ciowych polecenia
"find" - opcj a ta wyszukuj e w plikach i danych wyj ciowych polece
znaki sprecyzowane przez u yt kownika
"sort"- sortuj e wed ug okre lenia zawarto plików lub danych
wyj ciowych polece , poza tym odczytuj e dane wej ciowe i
wy wietla wyniki ( po dokonanym sortowaniu) na ekranie lub
zapisuj e j e do pliku albo do innego urz dzenia.
np:
sort [/r] [/+n]<"ag.txt">nowy.txt
gdzie:
/ r powoduj e odwrócenie kolej no ci sortowania tzn. "od .. a, a
nast pnie od 9..0"
/ + n okre la num er pozycj i znaku n, od kt órego polecenie sort
wykona swoje zadania
Na przyk ad, / + 5 b dzie powodowa o , e ka de porównanie b dzie
si rozpoczyna od pi tego znaku w ka dym wierszu. Wiersze
maj ce m nij sz liczb znaków ni n s sortowane przed innym i
wierszam i. Dom y lnie porównania rozpoczynaj si od pierwszego
znaku.
/ m ( kilobytes) opcj a ta podaj e w kilobaj tach rozm iar j aki by ,b dzie
u yty w operacj i sort owania, zazwyczaj 160 kB pam i ci
podstawowej.
/ l zm ienia porz dek sortowania narzucony przez ustawienia
regionalne
/ t [ dysk: ] [ scie ka] - okre la cie k katalogu , w ktorym m a zosta
zapisany plik roboczy polecenia sort,oczywi cie wtedy gdy dane nie
zm ieszcz si w pam i ci operacyj nej kom put era. Dom y lnie
u ywany j est syst em owy kat alog tym czasowy.
/ o [ dysk: ] [ scie ka] nazwa_pliku
opcj a ta pozwala na okre lenie pliku , w którym zostan zapisane
sortowane dane wej ciowe. Je eli plik nie zostanie okre lony , dane
s zapisywane do wyj cia st andardowego. Okre lanie pliku
wyj ciowego zapewnia szybkie i efektowne sortowanie.
4
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Sk adow e polecenia find:
find wyszukuj e znak lub ci g znaków w pliku oraz plikach. Po dokonanych
pom y lnie operacj ach , find wy wietla wszystkie wiersze zawieraj ce
szukany ci g znaków lub znak.
find [ / v ] [ / c ] [ / n ] [ / i ] "ciag=znak" [ [dysk:] [scie ka] nazwa_pliku[...] ]
PARAMETRY:
/ v pozwala wy wietli wszyst kie wiersze nie zawieraj ce szukanego
ci gu znaków.
/ c wy wietla tylko liczb wierszy , kt óre zawieraj okre lony ci g
znaków.
/ n poprzedza ka dy wiersz j ego num erem w pliku.
/ i przy wyszukiwaniu nie b dzie brana pod uwag wielko znaków
"ci g"- to szukany ci g znaków
[ dysk: ] [ cie ka] nazwa_pliku - lokalizacja szukanego pliku na dysku
Przyk ad:
type PROG.PAS | find /n "Pisz" - poprzedzone numerami wiersze zawieraj ce ci g
znaków Pisz ( w zbiorze PROG.PAS )
N aj prostszym przyk adem przetwarzania potokowego j est zastosowanie
polecenia sort do ustawienia w kolej no ci alfabet ycznej list y zawarto ci
skorowidza dyskowego . W tym przypadku polecenie sort pobiera dane wej ciowe
ze strum ienia danych wyj ciowych polecenia dir i przekazuj e swoj e dane
wyj ciowe do standardowego urz dzenia wyj ciowego , tj . na ekran m onitora .
Zapis t ej operacj i j est nast puj cy :
dir /b | sort <"Enter">
5
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Filtr more w przetwarzaniu potokowym
Polecenie m ore s u y do dzielenia na strony ( ekrany) d u szych zbiorów
tekstowych lub du ej liczby wierszy danych wyj ciowych innego polecenia
kierowanych na ekran. Polecenie m ore u ywane j est j ednak naj cz ciej j ako filt r
pobieraj cy dane wej ciowe ze strum ienia wyj ciowego innego polecenia .
Przyk ad:
Je li zbiór TEKST znaj duj cy si w katalogu g ównym dyskietki um ieszczonej w
nap dzie A , j est obszerny ( liczba wierszy tekstu przekracza liczb wierszy
ekranu) to po wykonaniu polecenia
type A:\ TEKST
na ekranie pozosta aby j edynie ko cowa cz . Zast osowanie filtru m ore tj .
wprowadzenie polecenia
type A:\ TEKST | more
spowoduje , e po zape nieniu j ednego ekranu wy wietlanie zostanie wstrzymane
do chwili naci ni cia przez u ytkownika dowolnego klawisza ( wykonywanie
polecenia m o e by przerwane w dowolnej chwili przez wci ni cie klawiszy Ct rl-
C).
Przyk ad:
Wprowadzenie polecenia
dir | more
spowoduje podobnie j ak polecenie dir z param etrem / p , wy wietlenie listy
zawarto ci bie cego katalogu ze stronicowaniem . Ró nica polega na t ym , e
polecenie dir z param etrem / p dzia a natychm iast , natom iast polecenie dir z
filt rem m ore powoduj e naj pierw wczytanie polecenia m ore do pam i ci ( j est t o
polecenie zewn t rzne ), nast pnie przetworzenie ut worzonego zbioru
tym czasowego ( w sposób niewidoczny dla u yt kownika ) , a dopiero potem
wy wietlenie strum ienia wyj ciowego na ekranie .
6
WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ
Laboratorium : SYSTEMY OPERACYJNE
Filtr sort w przetwarzaniu potokowym.
Polecenie sort um o liwia sortowanie danych nie t ylko wzgl dem pierwszego
znaku ka dego wiersza , ale tak e wzgl dem n-t ego znaku . Do okre lenia tego
znaku , tj . pozycj i pocz wszy od kt órej nale y uwzgl dni znaki podczas
sort owania , s u y param et r / + n . Polecenie sort bez tego param et ru j est
równowa ne poleceniu sort/ + 1 . Za pom oc t ego polecenia m o em y posortowa
skorowidz wed ug ró nych kryteriów. Przyk ad: Wprowadzenie polecenia
dir | sort <"Enter"> spowoduje wy wietlenie listy zawarto ci katalogu
bie cego posortowanej wed ug dat utworzenia zbiorów , a polecenia
dir | sort/+12 <"Enter"> posortowania wed ug godziny powstania zbiorów
(pocz wszy od godziny 00:00)
7


Wyszukiwarka

Podobne podstrony:
Ćwiczenie 4 Pomiar strumienia objętości gazu gazomierzami zwężkowymi
Ćwiczenie 1 Badania strumienia świetlnego różnych źródeł światła
4 Strumienie potoki
ZARZĄDZANIE FINANSAMI cwiczenia zadania rozwiazaneE
zestawy cwiczen przygotowane na podstawie programu Mistrz Klawia 6
menu cwiczenia14
ćwiczenie5 tabele
Instrukcja do cwiczenia 4 Pomiary oscyloskopowe
Filozofia religii cwiczenia dokladne notatki z zajec (2012 2013) [od Agi]
Ćwiczenia z chemii
Cwiczenie nr

więcej podobnych podstron