background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

1

 

Potoki i strumienie

 

STRUM I E 

( z  a n gie lsk ie go  st r e a m )

 

St r u m ie 

j e st  t o  pe w n e go  r odz a j u  " po

cz e n ie "  m i dz y  " n a da w c 

odbior c "  lu b  " odb ior c 

i  n a da w c "  o  w y gl dz ie  n ie pr z e r w a n e go  ci gu 

danych, celowo nie dzielonego na komunikaty.  

o  ot oczenia  ka dego  pr ocesu  nale 

t r zy  st r um ienie,  ut o sam iane  z  pew nym i 

plikam i  lub  ur z dzeniam i:  w ej ciow y,  w ynikow y  i  diagnost yczny.

 

St r um ie 

w ej ciow y  s u y  m in.  do  czyt ania  polece ,  par am et r ów  it p.  Do 

st r um ienia  w ynik ow ego  zapisyw ane  s 

w ynik i  dzia a 

r ó nych  pr ogr am ów . 

Natom iast  do  st r um ienia  diagnost y cznego  kier ow ane  s  infor m acj e  o  b

dach.  Na 

ogó  w szy st k ie  t e  t r zy  st r um ienie  odpow iadaj 

k onsoli  ( t w or z 

m onit or  i 

klaw iat ur a  ) .  Mo na  t o  j ednak  zm ieni  pr zy  pom ocy  t r zech  znaków :  > ,  > > ,  < . 

I ch  zadaniem  j est  kier ow anie  danych  w  inne  m iej sca  ni  st andar dow e  ( m onit or , 

klaw iat ur a) .  Pr zy k adow o  dane  w ej ciow e  m o na  skier ow a  do  zbior u  na  dysku, 

drukarki.  

 

"  >  "  pozw ala  skier ow a  dane  z  k onsoli  do  pliku  " a.cpp> b.t xt "  , 
przekierow uj e  w yj cie  pliku  * .cpp  do  pliku  * .t xt 

  

">>" powoduj e  dopisanie  zaw art o ci  do  ist niej cego  j u  pliku 
" b.cpp> > bb.t xt " ,  j e li  plik  bb.t xt  ist niej e  w yj cie  pliku  b.cpp 
zostanie dopisane do niego  

 

" < "  znak  m niej szo ci  podaj e  dane  na  w ej cie  polecenia- instrukcji 
"[instrukcja]< - inst rukcj i  polecenia  pom oc  za  bb.txt plik otwiera> 

Oczyw i cie  m o em y  m odyfik ow a 

opcj e  strumieni  popr zez  zagnie d enie 

pewnych atrybutów. 

Cz st o  zdar za  si 

, e  zaw ar t o 

plików  dla  uzysk ania  bar dziej  w idocznych 

r ezult at ów 

t r zeba  posor t ow a .  Do  t ego  celu  s u y  np: 

opcj a  "SORT"   

"sort<"bb.txt">nowy.txt"   

efek t em  dzia ania  w pisanej  inst r ukcj i  " nieupor z dkow any"  plik  bb.t xt  zam ieni  sie 

na posortowany plik o nazwie nowy.txt. 

Sor t ow anie  r ów nie  m o em y  okr e li  np:  Od  naj m niej szej  do  naj w i k szej

 

liczby 

lub  w edlug  alfabet u,  j est  w iele  opcj i  , ale  o  t ym  szer zej  w  pr zy k adach  dla 

przetwarzania potokowego.  

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

2

 

Char akt er  st andar dow ego  w ej cia  i  w yj cia  w yr a a  si  nast puj co:

 

 

m o liw a  j est  zm iana  bie

cego  przyporz dkow ania  st andardow ego  w 

st rum ienia  w e/ w y,  konkret nem u  urz dzeniow i  lub  plikow i; 

  

m o liw e  j est  pot ok ow e  przet w arzanie  inform acj i  ( piping) ,  co  w i

si  z  u yciem  specj alnego  t ypu  program ów  przet w arzaj cych  - 
filtrów.  

Kor zy 

z  t ego  pr zypor z dk ow ania  ( pr zypisania  ur z dzenia  lub  pliku  do 

st r um ienia)  polega  na  t ym ,  e  pr ogr am  kor zyst aj cy  ze  st andar dow ego  w e/ w y 

st aj e  si 

pr ogr am em  uniw er salnym .  Bez  konieczno ci  dokonyw ania  zm ian 

pr ogr am u  m o na  w  chw ili  w yw o ania  pr zekaza  m u  dane  z  dow olnego  pliku  lub 

ur z dzenia  albo  skier ow a  w yniki  do  dow olnego  m iej sca. 

 

Ró nica  pom i dzy  znakiem  >  a  > >  j est  t aka, 

e  w  pier w szy m  pr zypadk u 

ist niej ce  dane  w  pliku  zost an  skasow ane,  a  w  dr ugim  pr zypadku  dane  zost an 

dopisane 

na 

koniec 

j u 

ist niej cych. 

 

Gdy  chcem y  np.  w y s a  dane  do  dr ukar k i  t o  w  poleceniu  nie  m o em y  u y  s ow a 

" dr ukar ka" ,  gdy  kom put er  nie  b dzie

 

nas  r ozum ia .  Nale y  pos u y  si  w  t akim 

w ypadku  specj alnym i  sy m bolam i,  kt ór e  okr e laj 

nam  r odzaj  ur z dzenia.  I  t ak 

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.)  

 

o liw o ci  st er ow ania  st r um ieniam i

 

dany ch  m o na  zast osow a  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.  

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

3

 

POTOK (z angielskiego pipe lub pipeline) 

Pot ok 

j e st 

t o 

pe w ie n 

sposób 

n a 

k om u n ik a cj e , 

u m o liw ia j cy 

j e dn ok ie r u n k ow y 

pr z e p y w 

da n y ch , 

in for m a cj i 

m ie dz y 

a dr e sow a n y m i( sk oj a r z on y m i)  pr oce sa m i.  Zj a w isk o  pot ok u  odb y w a  si 

n a 

z a sa dz ie 

st r u m ie n ia , 

j e st 

n ie z a w odn e 

k on t r olow a n e .  

Sy m bole m  pot ok u  z w y cz a j ow o  pr z y j t o  p oj e dy n cz 

pion ow 

k r e sk 

("|").   

Typow e  polecenie  A  |  B  t w or zy  pot ok  ," ni  t r ansfuzyj n "  m iedzy  pr ogr am em  A  a 

pr ogr am em  B, 

cz c  st andar dow e  w yj cie  pr ogr am u  A  ze  st andar dow ym 

w ej ciem  pr ogr am u  B. 

 

Przetwarzanie potokowe (z angielskiego pipelining) 

st niej 

dw ie  r ów nie  dobr e  definicj e  ok r e laj ce  w y ej  w y m ienione  " zj aw isko" . 

  

Pier w sza  z  nich  m ów i,  e  pr zet w ar zanie  pot ok ow e  j est  r ów noleg ym  dzia aniem  w 

poszczególnych  fazach  danego  cyk lu  r ozk azow ego.  Kt ór y  z  uk adów  pr ocesor a 

pot ok ow ego  w ykonuj e  j aki  r ozkaz,  gdy  k olej ny  niezale ny  uk ad  t ego  pr ocesor a 

w  r ów noleg ym  czasie  pobier a  nast pny  r ozk az  um ieszczony  w  pam i ci 

operacyjnej ,  co  znacznie  podw y sza  w y daj no 

pr ocesor a.  " St opie  r ów noleg o ci 

konst r uk cj i  pr ocesor ów  w ynosi  od  t r zech  do  siedm iu  niezale ny ch  blok ów 

funkcj onalnych 

w ykonuj cy ch 

j ednocze nie 

pobr anie 

r ozkazu, 

j ego 

zdek odow anie,  obliczenie  adr esu  ar gum ent u,  pobr anie  ar gum ent u,  w ykonanie 

operacji i przechowanie wyniku". 

Kolej n 

w cze niej  w spom nian 

definicj 

pr zet w ar zania  j est  ci g  lub  szer eg 

pr ocesów  w  sy st em ie  UNI X  lub  unik spochodnym ,  kt ór ych  w ej cia  i  w yj cia  s 

po

czone  w  t en  sposób,  ze  w yniki  j ednego  pr ocesu  s  aut om at ycznie  kier ow ane 

( akum ulow ane)  na  w ej cie  nast pnego  w  kolej ce  pr ocesu. 

 

Ow e  pr zet w ar zanie  polega  m iedzy  inny m i  na  sk ier ow aniu  st r um ienia  dany ch 

" w yj ciow y ch"  j ednego  polecenia  do  innego  w  post aci  st r um ienia  danych 

w ej ciow y ch  . 

 

Pr zes anie  st andar dow ego  w yj cia  inst r ukcj i  1  j ak o  st andar dow ego  w ej cia  dla 

inst r ukcj i 

1, 

pr zyk adem 

t ego 

m o e 

by 

t akie 

pr ost e 

sfor m u ow anie: 

  

"instrukcja 1 | instrukcja 2"  

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

4

 

Mo na 

w yr ó ni 

t r zy 

podst aw ow e 

polecenia- inst r uk cj e 

pr zet w ar zaniu 

potokowym:  

 

"more" -  jest odpow iedzialne  za  w y w iet lanie  kolej no  st ron 
zaw art o ci  pliku  lub  danych  w yj ciow y ch  polecenia 

  

"find" -  opcj a  t a  w yszukuj e  w  plikach  i  danych  w yj ciow y ch  polece 
znaki  sprecyzow ane  przez  u yt kow nika 

  

"sort"-  sort uj e  w ed ug  okre lenia  zaw art o 

plik ów  lub danych 

w yj ciow y ch  polece ,  poza  t ym  odczyt uj e  dane  w ej ciow e  i 
w y w iet la  w yniki  ( po  dokonanym  sort ow aniu)  na  ekranie  lub 
zapisuj e  j e  do  pliku  albo  do  innego  urz dzenia. 

 

np:  

sort [/r] [/+n]<"ag.txt">nowy.txt

 

gdzie:  

 

/ r  pow oduj e  odw rócenie  kolej no ci  sor t ow ania  t zn.  " 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  pow odow a o  , e  ka de  porów nanie  b dzie 
si  rozpoczyna  od  pi t ego  znaku  w  ka dym  w ierszu.  Wiersze 
maj ce  m nij sz  liczb  znaków  ni  n  s  sort ow ane  przed  innym i 
w ierszam i.  Dom y lnie  porów nania  rozpoczynaj  si  od  pierw szego 
znaku.  

 

/ m  ( kilobyt es)  opcj a  t a  podaj e  w  kilobaj t ach  rozm iar  j aki  by  ,b dzie 
u yt y  w  operacj i  sort ow ania,  zazw yczaj  160  k B pam i ci 
podstawowej.  

 

/ l  zm ienia  porz dek  sort ow ania  narzucony  przez  ust aw ienia 
regionalne  

 

/ t  [ dysk: ] [ scie ka] -  okr e la  cie k  k at alogu  ,  w  kt orym  m a  zost a 
zapisany  plik  roboczy  polecenia  sort ,oczyw i cie  w t edy  gdy  dane  nie 
zm ieszcz  si  w  pam i ci  operacyj nej  k om put era.  Dom y lnie 
u yw any  j est  syst em ow y  kat alog  t ym czasow y. 

  

/ o  [ dysk: ] [ scie ka] nazw a_pliku 

 

opcj a  t a  pozw ala  na  okr e lenie  pliku  ,  w  kt órym  zost an  zapisane 
sort ow ane  dane  w ej ciow e.  Je eli  plik  nie  zost anie  okre lony  ,  dane 
s  zapisy w ane  do  w yj cia  st andardow ego.  Okre lanie  pliku 
w yj ciow ego  zapew nia  szybkie  i  efekt ow ne  sort ow anie. 

    

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

5

 

Sk a dow e  pole ce n ia  fin d:  
find  w yszukuj e  znak  lub  ci g  znaków  w  pliku  oraz  plikach.  Po  dokonanych 
pom y lnie  operacj ach  ,  find  w y w iet la  w szyst kie  w iersze  zaw ieraj ce 
szukany  ci g  znaków  lub  znak. 

 

 

find [ / v ] [ / c ] [ / n ] [ / i ] "ciag=znak" [ [dysk:] [scie ka] nazwa_pliku[...] ] 

PARAMETRY:  

 

/ v  pozw ala  w y w iet li  w szyst kie  w iersze  nie  zaw ieraj ce  szukanego 
ci gu  znaków . 

  

/ c w y w iet la  t ylko  liczb  w ierszy  ,  kt ór e  zaw ieraj  okre lony  ci g 
znaków.  

 

/ n  poprzedza  ka dy  w iersz  j ego  num erem  w  pliku. 

  

/ i  przy  w y szukiw aniu  nie  b dzie  brana  pod  uw ag  w ielko 

znaków 

  

" ci g" -  t o  szukany  ci g  znaków 

  

[ dysk: ] [ cie ka]  nazw a_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 )  

 

aj pr ost szym 

pr zy k adem 

pr zet w ar zania 

pot okow ego 

j est 

zast osow anie 

polecenia  sor t  do  ust aw ienia  w  kolej no ci  alfabet ycznej  list y  zaw ar t o ci

 

skor ow idza  dyskow ego  .  W  t y m  pr zypadku  polecenie  sor t  pobier a  dane  w ej ciow e 

ze  st r um ienia  dany ch  w y j ciow ych  polecenia  dir  i  pr zek azuj e  sw oj e  dane 

w yj ciow e  do  st andar dow ego  ur z dzenia  w yj ciow ego  ,  t j .  na  ekr an  m onit or a  . 

Zapis t ej  oper acj i  j est  nast puj cy  : 

 

dir /b | sort <"Enter"> 

  

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

6

 

Filtr more w przetwarzaniu potokowym 

Polecenie  m or e  s u y  do  dzielenia  na  st r ony  ( ekr any)  d u szych  zbior ów 

t ekst ow y ch  lub  du ej  liczby  w ier szy  danych  w yj ciow ych  innego  polecenia 

kier ow any ch  na  ekr an.  Polecenie  m or e  u yw ane  j est  j ednak  naj cz

ciej  j ako  filt r 

pobier aj cy  dane  w ej ciow e  ze  st r um ienia  w yj ciow ego  innego  polecenia  . 

 

Pr zyk ad:  

Je li  zbiór  TEKST  znaj duj cy  si  w  kat alogu  g ów ny m  dy skiet ki  um ieszczonej  w 

nap dzie  A  ,  j est  obszer ny  ( liczba  w ier szy  t ek st u  pr zek r acza  liczb 

w ier szy 

ekranu) to po wykonaniu polecenia  

type A:\ TEKST 

na  ek r anie  pozost a aby  j edynie  ko cow a  cz

.  Zast osow anie  filt r u  m or e  t j . 

wprowadzenie polecenia  

type A:\ TEKST | more 

spow oduj e  ,  e  po  zape nieniu  j ednego  ek r anu  w y w iet lanie  zostanie wstrzymane 

do  chw ili  naci ni cia  pr zez  u yt kow nika  dow olnego  klaw isza  (  w ykonyw anie 

polecenia  m o e  by  pr zer w ane  w  dow olnej  chw ili  pr zez  w ci ni cie  klaw iszy  Ct r l-

C).   

Pr zyk ad:  

Wprowadzenie polecenia  

dir | more 

 

spow oduj e  podobnie  j ak  polecenie  dir  z  par am et r em  / p  ,  w y w iet lenie  list y 

zaw ar t o ci  bie

cego  kat alogu  ze  st r onicow aniem  .  Ró nica  polega  na  t ym  ,  e 

polecenie  dir  z  par am et r em  / p  dzia a  nat ychm iast  ,  nat om iast  polecenie  dir  z 

filt r em  m or e  pow oduj e  naj pier w  w czyt anie  polecenia  m or e  do  pam i ci  ( j est  t o 

polecenie 

zew n t r zne 

) , 

nast pnie 

pr zet w or zenie 

ut w or zonego 

zbior u 

t ym czasow ego  ( w  sposób  niew idoczny  dla  u yt kow nika  )  ,  a  dopier o  pot em 

w y w iet lenie  st r um ienia  w yj ciow ego  na  ekr anie  . 

 

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

 

Laboratorium : SYSTEMY OPERACYJNE

   

7

 

Filtr sort w przetwarzaniu potokowym. 

Polecenie  sor t  um o liw ia  sor t ow anie  danych  nie  t ylk o  w zgl dem  pier w szego 

znaku  ka dego  w ier sza  ,  ale  t ak e  w zgl dem  n- t ego  znaku  .  Do  okr e lenia  t ego 

znaku  ,  t j .  pozycj i  pocz w szy  od  kt ór ej  nale y  uw zgl dni 

znaki  podczas 

sor t ow ania  ,  s u y  par am et r  / + n  .  Polecenie  sor t

 

bez  t ego  par am et r u  j est 

r ów now a ne  poleceniu  sor t / + 1  .  Za  pom oc  t ego  polecenia  m o em y  posor t ow a 

skor ow idz  w ed ug  r ó nych  kr yt er iów .  Pr zyk ad:  Wpr ow adzenie  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)