Ocenite etot tekst:


     
             ... |to utverzhdenie ostanavlivaet na sebe nashe
             vnimanie. Na pervyj vzglyad ono kazhetsya erundoj.
             Kazhetsya erundoj ono i na vtoroj vzglyad. I tol'ko na
             tretij, pristal'nyj i dotoshnyj vzglyad, nam nachinaet
             mereshchit'sya, chto eto - polnyj i okonchatel'nyj bred.
---------------------------------------------------------------
     © Copyright 1995 Andrej Bogatyrev
     Andrej Bogatyrev (abs@openwin.msk.su)
     Rodilsya v 1965, napisal eto vesnoj 1995.
     http://sun.nstu.nsk.su/vendors/sun/bogat.html
---------------------------------------------------------------

     Itak,  nastalo  vremya  oglyadet' tot mir, kotoryj vrashchaetsya
vokrug nas, i v kotorom vrashchaemsya my. V etom mire ya s 1984 goda
obitayu v srede UNIX, i ne zhaleyu.  Prishlos' i v tekstah yadra BSD
pokovyryat'sya, i v shellah raznyh, da i v  prikladnyh  programmah
pouchastvovat'.  A  uzh  administrirovat'  i nastraivat'...  Net,
UNIX - eto konechno ne ideal  i  dazhe  ne  podarochek.   No  ved'
gorizont  -  eto  to, chto otodvigaetsya, skol'ko by my k nemu ni
stremilis'. Tak zhe i s idealom...




     eto ne sistema, a skoree zagruzochnyj monitor dlya programm.
Otsutstvie zashchity i mnogozadachnosti (ili prityagivanie ih za ushi
cherez  zadnij  prohod)  ne  pozvolyayut  skol'ko-nibud'  ser'ezno
rassmatrivat' etu sistemu dlya industrial'nogo primeneniya (a  ne
dlya  nastol'nyh  igr).  Osobenno  kogda  nado  obsluzhit'  mnogo
narodu. V seti. Da eshche i virusom ih fajly ne porazit'.


     ochen'  slozhnaya  i  otkrovenno plohaya operacionnaya sistema.
Problema v tom, chto nichego luchshe, nadezhnee i otlazhennee poka ne
pridumali;  a  esli  i  pridumali, to ono eshche ne vyshlo za steny
laboratorij i iz maketov.  Izobreteniya Microsoft - novee, no ne
luchshe.


     kogda   tuda  dobavitsya  mnogozadachnost',  navernoe  budet
neploho. No vse zhe - eto sistema, vyrosshaya vokrug  graficheskogo
interfejsa.  CHto,  vprochem, ne est' ploho - poskol'ku prityanulo
za  soboj  ob®ektnuyu  orientirovannost'  i   sredstva   obshcheniya
programm  mezhdu  soboj.  Problema v tom, chto vse eto, i v bolee
sovershennom vide, uzhe bylo k tomu vremeni v UNIX. Problema UNIX
-  chto  etim malo kto pol'zovalsya. Vse predpochitali rugat' UNIX
za komandnyj  nedruzhestvennyj  interfejs,  nezheli  pol'zovat'sya
druzhestvennoj obolochkoj X Window, kotoraya tam uzhe davno byla.
     Tut   mozhno   pronablyudat'  i  inye  interesnye  problemy,
svyazannye kak raz s otkrytost'yu. UNIX -  sistema  otkrytaya,  ee
razvivaet,  uluchshaet  i izuchaet v ishodnyh tekstah massa narodu
po   vsemu   svetu:   sistema-laboratoriya   dlya   vsego   hack­
er-soobshchestva.   Zato  kommercheskie  postavshchiki UNIX dlya raznyh
platform do nedavnego vremeni rychali drug na druga, pryatali vse
svoe  po  uglam,  podkladyvali drug drugu svinok. Kak zhe - UNIX
UNIHom  (ibo  UNIX  -  on  i  v  Afrike...   Edinstvennaya   OS,
perenesennaya  na  desyatki  arhitektur mashin), no denezhki vroz'.
Tem vremenem na rynok vylez Microsoft, kotoryj nikomu nichego iz
ishodnyh  tekstov  ne  pokazyval  (to est' byl i est' absolyutno
zakryt), ni s kem krome sebya ne sorevnovalsya,  i  slepil  soft­
ware,  kotorym  srazu stali pol'zovat'sya milliony. Da, nikto ne
govorit, chto on sdelal samoe  luchshee  (ili  hudshee),  no  samoe
massovoe  -  nesomnenno.   I  tut - uvy UNIHam. Ran'she UNIHisty
svysoka smotreli na nedosistemu MS DOS i  pochivali  na  lavrah.
Teper'...
     Zato  eto  sygralo  polozhitel'nuyu  rol' - i eshche ne slishkom
pozdno - UNIX-proizvoditeli  perestali  rychat'  drug  na  druga
zlobno,  a  oslabili  ton do "nastorozhenno". I prishlos' im vsem
vmeste dumat' o tom, kak luchshuyu operacionnuyu sistemu (da eshche  i
uzhe  sushchestvuyushchuyu,  i  davno)  eshche  i  v lyudi vytolknut'. Takie
pirogi. Monstry protiv vyskochki Microsoft-a.


     ee  pochemu-to  imenuyut "setevoj operacionnoj sistemoj", da
kakaya zh ona operacionnaya sistema?  DOS  cherez  set'  -  sistema
perekachki  fajlov  v  lokal'noj  (i  tol'ko)  seti. Neser'ezno,
gospoda. Vy somputer science izuchali? CHto takoe OS znaete? Nu i
gde  ona?  Nu ladno, ladno, pust' dazhe operacionnaya sistema. No
ne  dlya  rabotayushchego  na  mashine  cheloveka.   Dlya   vydelennogo
servera.  A  potomu  -  ne  "setevaya  operacionnaya  sistema", a
"sistema dlya seti". Setevaya - eto kogda operacionnaya sistema (v
tom chisle) cherez set' rabotaet, resursy razdaet.
     Da,  eshche ochen' menya razdrazhaet kogda Pisyuk v Novell-ovskoj
seti "rabochej stanciej" velichayut.  Smeshno.  Zabyli,  chto  takoe
rabochaya  stanciya  -  a  ved'  desyat' let nazad eto luchshe znali.
Kogda cherez desyat' let ponyatiyu dayut vyholoshchennoe znachenie - eto
udruchaet.


     okstis',  eto  tozhe  UNIX!  Da,  no  chto-to  on  kak-to uzh
graficheskij i  ob®ektno-orientirovannyj  kakoj-to  bol'no.  Mi­
crosoft-u  takoe  i ne snilos'... Da-da, a teper' eta ob®ektno-
orientirovannaya grafika perekochevala v  UNIX  -  pod  nazvaniem
OpenStep. Vot, v Solaris, naprimer.


     "a  eto  chto  za  zver'  takoj?",  -  sprosit  podavlyayushchee
bol'shinstvo.       A       eto       takaya       raspredelennaya
ob®ektno-orientirovannaya  operacionnaya  sistema ot SunSoft. Vot
vse  krichat  "mikroyadra",  a  kto  ih   silu   real'no
ispol'zuet?  OSF/1  nad  MACH  postroennaya? Net. A vot Spring -
ispol'zuet, prosto dlya togo i delalsya. A na chto pohozha? A ni na
chto.  Vot  naprimer:  process v nej mozhet imet' chast' pamyati na
odnoj mashine, chast' - na drugoj. Gde nado i gde udobnee - tam i
budet imet'. A kto ee videl? A rabotaet ona v laboratoriyah Sun­
Soft! Kak gotovaya polnocennaya  sistema,  v  chastnosti  cikl  ee
razrabotki  vedetsya  pod  neyu  samoj,  bez privlecheniya UNIHa. A
prilozheniya pod nee est'? A netu... |ta  sistema,  veroyatno,  ne
budet   kommercheskoj.  Zato  posluzhit  prototipom  operacionnoj
sisteme 21 veka. Dolzhen zhe byt' posledovatel' u UNIHa.  Kstati,
UNIHnyj interfejs k Spring pishut russkie programmisty.


     snova   UNIX.   CHego  tut  teper'  tol'ko  net!  I  ne  po
znamenitomu principu "i togo net, i etogo net". Inache.

     Voobshche, na UNIX posmotrish': svalka-svalkoj. Vot chto znachit
-   otkrytaya   sistema.   CHto   hotyat,    to    i    dobavlyayut.
|ksperimental'nyj poligon kakoj-to, a ne operacionnaya sreda. Da
eshche  s  bogatym  arsenalom  sredstv  dlya   svyazyvaniya   voedino
nesovmestimyh mezhdu soboj veshchej - vivisekciya sploshnaya. Vot odno
tol'ko nepriyatnoe  dlya  avtorov  vseh  drugih  sistem  svojstvo
imeetsya:  standart na UNIX. SVR4 nazyvaetsya. A ni na chto drugoe
standarta poka net, v tom chisle na goryacho  lyubimyj  MS  Windows
API.  Tak  chto  v  UNIX  narod  pobaluet-pobaluet,  eksperiment
postavit, chto-nibud' novoe izobretet (kak v svoe  vremya  TCP/IP
tut  otladili),  da  potom - bac! - i standart na eto primet. A
vse ostal'nye - dogonyaj.


     menya   zabavlyayut,   no   i  zastavlyayut  krivit'sya  gromkie
zayavleniya proizvoditelej NOVYH operacionnyh sistem o  tom,  chto
vot,   oni   dobavili  novuyu  vydayushchuyusya  vozmozhnost'  -  vrode
keshirovaniya fajlov v pamyati ili optimizacii  razmeshcheniya  fajlov
na  diske - kotoraya sdelala ih sistemu neprevzojdennoj. Rebyata,
v UNIX ya ob etih samyh vozmozhnostyah slyshal  minimum  6
let  nazad.  I  pechal'no  videt' razveshivayushchih ushki chajnikov, i
vpravdu  schitayushchih   eto   izobreteniem   ih   lyubimoj   firmy,
otkroveniem   i   novinkoj,   ostavlyayushchej  daleko  pozadi  vseh
neizvestnyh im konkurentov.  Neznanie i nevezhestvo  daet  povod
dlya chvanstva.
     ZHal'   to,   chto   real'no  novyh  idej  -  a  ne
pozaimstvovannyh drug u druga - nemnogo. Naprimer,  ob®ektnost'
v  OS.  Novye  idei  k tomu zhe dolgo musolyatsya, ispytyvayutsya na
prochnost', raznye realizacii odnogo i togo  zhe  prevrashchayutsya  v
vojnu  avtorov  realizacij.  Obnadezhivaet vo vsem etom processe
odno: rano ili pozdno  poleznoe  prizhivaetsya,  nezhiznesposobnye
pobryakuhi   otmirayut   i   otvalivayutsya,   i  nachinaet  pahnut'
standartom (chto  ne  oznachaet  okonchanie  processa  razvitiya  i
uluchshenij);  a  takzhe  to, chto rano ili pozdno vse bazovye veshchi
sol'yutsya voedino. Razlichie i mnogoobrazie nablyudaetsya tol'ko na
perednem  fronte  issledovanij:  molotki  i  vilki  dolzhny byt'
privychny i edinoobrazny, inache my ne smozhem udobno  i  privychno
pol'zovat'sya imi povsednevno.


     Mne,  kak  programmistu,  po  bol'shomu schetu bezrazlichno -
kakaya platforma. Moe delo - yazyk  Si,  da  to,  chtoby  to,  chto
opisano v dokumentacii, rabotalo imenno tak, kak ono opisano, a
ne  kak  Bog  na  dushu  polozhit.  Rabotalo  tak,  chtoby  ya  mog
programmirovat'  to,  chto  hochu  ya,  a  ne poluchat' neozhidannye
syurprizy. CHtoby ono mne pomogalo, a ne zastavlyalo  prevratit'sya
v  mastera  lavirovki  i izvrashchenij. Rabotalo pravil'no, v meru
bystro i nadezhno. Nu i udobno, konechno zhe, ne  lyublyu  ya  pisat'
zaklinaniya  da  eshche v desyatke mest srazu. Pomnit' vse eti mesta
ochen' lenivo.
     Koroche    govorya,    mashina    dolzhna    ne   meshat'   mne
programmirovat'.  A eto bol'she vsego svyazano s kachestvom OS.
     Samoe  glavnoe,  zachem  sobstvenno programmy, operacionnye
sistemy i raznyj instrumentarij napisany - eto chtoby ya mog  kak
mozhno  proshche  i  legche  poluchit' rezul'tat, sdelat' to, chto mne
nuzhno (ili prosto hochetsya: "hochu" - est' dvigatel' razvitiya).
     YA  videl massu "glyukov" v rannih Solaris-ah. S priskorbiem
dolzhen soobshchit', chto ih kolichestvo (a glavnoe: ubojnaya sila)  v
versii  2.4  upalo  na  poryadok.  Rabotaet  uzhe  ne "snosno", a
"horosho".  |tot  put'  i  HP  UX  10,  i DEC, i Microsoft s ego
Windows NT eshche dolzhny projti.
     Voobshche,  sejchas  est'  dve  protivopostavlyaemye  tendencii
naschet uvelicheniya skorosti raboty mashin. Odna -  eto  uskorenie
processora. Vse milo, poka u vas processor ne nachinaet obgonyat'
vse ostal'nye chasti komp'yutera nastol'ko, chto bystryj processor
vynuzhden  dolgo-dolgo  zhdat'  k primeru sistemnoj shiny, kotoraya
emu dannye iz pamyati podaet. Nazyvaetsya takaya veselaya  situaciya
nesbalansirovannost'yu   mashiny.   Vtoraya  tendenciya  -
klepat' mnogoprocessornye mashiny s ne obyazatel'no sverhbystrymi
processorami. Mol, rasparallelim vychisleniya, tak N muzhikov za 1
chas sdelayut to zhe samoe, chto sdelaet za odin  chas  odin  muzhik,
sposobnyj  odin  rabotat'  za  N  chelovek. Ideya v meru zdravaya,
krome  odnogo  tonkogo  momenta:  ne   vse   zadachi   poddayutsya
rasparallelivaniyu;  a togo huzhe - sejchas parallel'no napisannyh
programm malovato. Znachit, rabotat' nado, pisat' ih, da  starye
perepisyvat'. No na eto zh massa deneg, lyudej i vremeni
nuzhna!
     Vse  prekrasno,  tol'ko  ya  hochu  i  mnogo i bystro srazu.
Davajte delat'  mnogoprocessornye  sistemy,  i  davajte  delat'
bystrye processory. Ni pro chto ne zabyvaya.
     Nu vot tut-to opyat' pora vspomnit' pro sbalansirovannost'.
Esli u nas est' 4 processora, a koridor iz pamyati k nim  (shina,
estestvenno)  pozvolyaet  tol'ko  odin  iz  nih  na  polnuyu moshch'
pitat', to drugie tri budut zhdat' osvobozhdeniya etogo  koridora,
kakimi  by  bystrymi oni ne byli. CHto budet, esli chetyrehryadnoe
shosse napravit' cherez odnoryadnyj pereulok? Pravil'no: probka!
     Variant obratnyj: koridor shirokij, processory slaben'kie -
ele zhuyut.  Na shine dannye davno est', a processory ih potrebit'
ne mogut. Otsyuda vyvod: v komp'yutere vse dolzhno byt' krasivo, i
CPU, i shina, i pamyat', da i diski.
     Dlya  uskoreniya  dostupa v pamyat' v svoe vremya processornyj
kesh izobreli -  kotoryj  v  registrovoj  bystroj  pamyati  chasto
ispol'zuemye  dannye sohranyaet, i tem umen'shaet chislo obrashchenij
k bolee medlennoj operativnoj pamyati. YAsno, chto chem bol'she kesh,
tem  bolee processoru bezrazlichna uzost' koridora, poskol'ku on
izolirovan ot zhestokogo mira. No  vot  dosada:  tak  proishodit
lish'  do  teh  por,  poka dannye bolee-menee umeshchayutsya v kesh. A
esli programma linejno summiruet massiv v 1 GB? Tut nikakoj kesh
ne pomozhet - tut bystraya shina neobhodima.
     Teper'  eshche  -  pust' u nas shina moshchnaya. I pust' iz pamyati
dannye posledovatel'no  vybiraet.  No  u  nas  v  mnogozadachnoj
sisteme eshche processory est', kotorye drugim delom zanimayutsya. I
im tozhe nuzhna shina. Znachit, poka ona zanyata - oni budut  zhdat'.
Kak byt'?
     Vyhodov  dva:  pervyj  -  imet'  neskol'ko shin, kotorye ne
blokiruyut drug druga pri obrashchenii k obshchej operativnoj  pamyati.
Pamyat'  dlya  etogo  "sloenaya" byt' dolzhna. Tut, pravda, slozhnaya
problema s sinhronizaciej dannyh voznikaet - ezheli  cherez  odnu
shinu  dannye  chitayutsya,  a cherez druguyu - v eto zhe vremya, te zhe
samye - zapisyvayutsya. A vtoroj  vyhod  -  sdelat'  takuyu  shinu,
kotoraya bystro- bystro osvobozhdaetsya.
     Kak  rabotaet normal'naya shina? Vystavlyaetsya na nee zapros,
ustrojstvo (pamyat', naprimer) na nego otvechaet, svoimi  mozgami
ne  slishkom  rezvo  shevelya, zatem shina osvobozhdaetsya - i drugoj
processor,  kotoryj  vse  eto  vremya  zhdal,  vystavlyaet   svoj,
sleduyushchij  zapros  k  pamyati.  A  vot v Sun ispol'zuetsya drugaya
shina,  paketnaya,  nazyvaetsya  XDBus.  Ona  delaet  chut'  inache.
Processor govorit: daj mne takie-to dannye po takim-to adresam.
SHina zapros peredaet, i esli pamyat' (ili karta vvoda-vyvoda) na
nego   ne   mozhet   otvetit'   nemedlenno   gotovymi   dannymi,
otklyuchaetsya. Po shine mozhno slat' drugie zaprosy ili dannye -  k
drugim processoram. Kak tol'ko dannye budut gotovy, zaproshennoe
ustrojstvo govorit  shine:  "gotovo".  I  v  svobodnyj  interval
zahvatyvaet  shinu  i  otsylaet  dannye k zhdushchemu ih processoru.
Koroche govorya, poluchaetsya chto po odnomu telefonu mogut govorit'
ne  dva  cheloveka,  a  mnogo - ispol'zuya te pauzy, kogda kto-to
zamolkaet  dlya  obdumyvaniya  svoego  otveta.  Obmen  proishodit
paketami,  maksimal'no  plotno  "upakovannymi" vo vremeni. SHina
vse  vremya  (a  ne  epizodicheski)  rabotaet   na   maksimal'noj
propusknoj  sposobnosti.  To  est',  esli prodolzhit' analogiyu s
telefonom, v provode  nikogda  net  molchaniya,  hotya  vse  vremya
govoryat  raznye  golosa.   V principe, esli vzyat' bolee bystruyu
shinu,  no  ne  packed  switched,  to  odin   processor
veroyatno  budet  imet'  bolee bystryj dostup k pamyati.  No esli
processorov  mnogo  -  nachnetsya  tolcheya,  pauzy,  ozhidaniya,   i
nekotorye  iz  processorov  budut  prostaivat', prichem
mnogo dol'she, chem v packed switch shine s men'shej skorost'yu!
     Est'   eshche   odna   analogiya:  s  poezdom-ekspressom.  Emu
osvobozhdayut put', pritormazhivaya vse ostal'nye poezda.  |kspress
dohodit   bystro,   zato  vse  ostal'nye  poezda  v  rezul'tate
opazdyvayut na mnogo chasov. Neravnopravie, otsutstvie  simmetrii
i sbalansirovannosti.
     A  teper'  -  o  mnogoprocessornosti.  Pust' u vas idut na
mashine  dve  zadachi.   S  kvantovaniem  vremeni:  to  odna   na
processore  porabotaet,  to  drugaya.  Dlya intensivnyh po dannym
zadach kesh etogo processora budet chasto vytryahat'sya: to zagruzhaya
dannye  odnoj  zadachi,  to  drugoj.  A  esli  u  vas  est'  dva
processora,  to  zhit'  kak-to  legche.  Mozhet   hot'   odna   na
fiksirovannom  processore  osyadet.  Da  i  voobshche, proshlo vremya
odinochek. Teper' problemu prinyato reshat'  kollektivno,  gurtom.
Nu a uzh esli i v odinochku - to pust' drugoj processor hot' obed
dlya  myslitelya  gotovit:  dannye  tam  s  diska  ili  iz   seti
podkachivaet,   graficheskij  interfejs  obsluzhivaet,  preryvaniya
lovit (to est' ispolnyaet  rol'  "zheny",  nesushchej  v  sem'e  vse
tyazhesti byta).
     Koroche  govorya,  v  mnogozadachnoj  sisteme (kakovoj UNIX i
yavlyaetsya) lishnie processory nikogda ne povredyat.  Pravda,  esli
u  vas  mashina tol'ko dlya nabivki tekstov ispol'zuetsya - to vam
eto ne nado po opredeleniyu. Vprochem, vojny processorov vas tozhe
togda  ne  kasayutsya. Zachem vam togda Pentium? Zachem UltraSPARC?
Kakaya Alpha? Kupite sebe PC 286 (bez vsyakogo  Power)  i  bud'te
schastlivy.
     A  vot  esli  u vas mashina srazu mnogo pol'zovatelej cherez
set' da cherez mul'tipleksory obsluzhivaet - togda  delo  drugoe.
Odni  chto-to  schitayut, drugie svoi bessmertnye tvoreniya v fajly
redaktorom nabivayut (nu vot kak ya sejchas), tret'i - kompiliruyut
chto-to.  A  uzh baza dannyh diskami vorochaet - bud' zdorov.  Tut
processory i shiny ne pomeshayut: ni chislom, ni bystrodejstviem.
     Est'   eshche   odna  interesnaya  shtuka,  kotoraya  nazyvaetsya
razmerom  operativnoj  pamyati.  YAsno,  chto  esli  ee  malo,  to
operacionnoj  sisteme pridetsya chto-to podkachivat' s diska, a ne
iz fajlovogo kesha.  Da pri tom eshche kakie-to processy iz  pamyati
na   disk   v   svopping   vykachivat',  chtoby  komu-to  drugomu
prostranstvo  v  pamyati  osvobodit'.  Vse  eto  katastroficheski
zamedlyaet  rabotu  sistemy.  Pri  samom bystrom processore, ibo
disk v mashine - samoe medlennoe. Tak chto ne zhalejte pamyati.  No
-  i  ne pokupajte chrezmerno: prostaivat' budet - znachit den'gi
svoi vy vybrosili na veter.
     Vot  takie  interesnye  cifry  privedu: esli 1 nanosekunda
(10E-9) budet rassmatrivat'sya kak 1 sekunda, to
    
     CHem   bol'she   pamyati,   tem  rezhe  nuzhen  disk  -  i  eto
dramaticheski  uvelichivaet  bystrodejstvie.  Da,  sovsem   zabyl
ob®yasnit'  -  pochemu.  Potomu  chto UNIX dannye, raz schitannye s
diska, staraetsya sohranit' v buferah v operativnoj pamyati  -  v
keshe. I ne lazit' za nimi kazhdyj raz na meeedleeennyj disk.
     Sleduyushchij  zatyk  vozmozhen  v  seti, kogda u vas tak mnogo
mashin,  chto  oni  derutsya  mezhdu  soboj  za edinstvennyj provod
Ethernet.  Kto  kogo  perekrichit.  Set'  srazu   perepolnyaetsya.
Resheniem   tut   mozhet   byt'  razdelenie  mashin  na  neskol'ko
izolirovannyh segmentov  seti,  s  priemlemym  chislom  mashin  v
kazhdom  segmente;  ili  ispol'zovanie  intellektual'nyh habov i
svitchej, kotorye umen'shayut chislo stolknovenij paketov.
     Nu  i  naposledok  pro  ekster'er.  Monitor. Mne vsegda ne
hvatalo razmera monitora, poskol'ku ya  lyublyu  obkladyvat'sya  na
stole  bumagami,  prikalyvat'  ih na stenku, i dazhe podstavlyat'
stul'ya dlya neumestivshihsya listochkov. Byli by monitory 30",  40"
-  ya  by  zanyal  i  eto prostranstvo. K schast'yu, Sun postavlyaet
olvwm - virtual window manager, kotoryj  nazhatiem  pary  klavish
predostavlyaet  vam  drugoj ekran (tochnee govorya, druguyu oblast'
rabochego  polya,  kotoroe  ogromno  i  bol'she   razmera   ekrana
monitora).  |to  hot'  i  ne  reshaet  problemu razmera rabochego
stola, no hotya by predostavlyaet ih v neogranichennom kolichestve.
Slava  razrabotchikam,  ekrany na rabochih stanciyah imeyut vysokoe
razreshenie i ne portyat glaza.
     Ah da, eshche disk. Ne budu govorit' pro optimizaciyu skorosti
dostupa k nemu - vsyakie tam RAID 5 i stripes, a takzhe  zerkala,
kotorye  pozvolyayut  razmalyvat'  kuvaldoj  odin iz diskov i pri
etom prodolzhat' rabotat' - net, menya  kak  pogrammista  volnuet
drugoe:  emkost'. Ishodnye teksty vsyakih sistem, kotorye u menya
est' (legal'no, gospoda! -  v  UNIX  prinyato  razdavat'  teksty
sistemnyh  programm  i  utilit),  zanimayut  gigabajty i desyatki
gigabajt. A esli ih eshche  nachat'  kompilirovat'...  A  esli  eshche
polozhit' tut zhe bazu dannyh... Nu, vobshchem, vy ponyali, da?


     Nu  chto  za merzkie seti TCP/IP! Vsego kakih-to 32 bita na
adres  -  razve  zh  etogo  hvatit  na  ves'  mir?  Adresov  uzhe
katastroficheski  ne hvataet, NIC vydaet novye nomera podsetej s
bol'shim skripom.
     No ya-to hotel skazat' chto-nibud' pro fizicheskie seti.
     


    


     Uzh   tak   dolgo  UNIX  rugali  za  otsutstvie  druzheskogo
interfejsa, kak i proglyadeli, chto on tam davno uzhe est' (nu let
10  tochno);  a  vot  sredstv, podobnyh shell, v drugih
sistemah kak-to ne obrazovalos'.
     CHto   my  imeem?  Imeem  my  okonnuyu  graficheskuyu  sistemu
X Window, kotoraya (v otlichie  ot  MS  Windows)
mozhet  pokazyvat'  kartinku  ne  na  toj mashine, gde prikladnaya
programma  etu  kartinku  generit.  Imeem  my  biblioteku   dlya
ispol'zovaniya   etogo:   Xlib.    I   na   nej
napisannye  "toolkit"y  -  biblioteki  funkcij   bolee
vysokogo  urovnya:  menyu,  dialog  boxes, scroll bars,- wid­
gets koroche govorya (neperevodimyj fol'klor - "stroitel'nye
bloki  graficheskogo interfejsa"). Stil' ramochek, menyu itp. - ne
vstroen v X Window, ego zadayut toolkity! Zahochetsya vam
sdelat' druguyu vneshnost' - prepyatstvij net.
     Sredi    nih    nahodyatsya    OpenLook   i
Motif   -   kotorye   do   nedavnego   vremeni
sorevnovalis' mezhdu soboj. Pobedil Motif - kak
bolee  pohozhij  na  MS  Windows.    Hotya,   chestno   priznayus',
programmirovat'  na OpenLook-ovskoj biblioteke
XView sushchestvenno proshche. Zato i veshchej, kotorye
v  XView hochetsya dobavit' ili peredelat' - tozhe gorazdo bol'she.
     Kstati,   Tk   iz   Tcl/Tk   -  eto  tozhe
toolkit,  imeyushchij  vneshnost'   Motif.
Zato,  v  otlichie  ot  Motif,  v Tk vse mozhet menyat'sya vo vremya
vypolneniya programmy:  cveta,  fonty,  razmery.  Motif  v  etom
smysle fiksirovan.
     Eshche  imeyutsya  vsyacheskie rasshireniya dlya trehmernoj grafiki,
vrode PEX  i  OpenGL.  OpenGL
priduman firmoj Silicon Graphics, horosh, i ya udivlyayus' - pochemu
on do sih por ne stal standartom dlya X  Window?   No  i  otvet,
pohozhe, znayu: avtory prosyat deneg za ispol'zovanie.  V to vremya
kak  X  Window  vplot'  do  vseh  ishodnyh   tekstov   dostupny
besplatno.   CHto,  pravda, ne oznachaet, chto ih pishut v
universitetah  golye  entuziasty.   Ih  finansiruet  konsorcium
krupnyh   proizvoditelej   UNIX-sistem.   A  vlozhenie  deneg  v
universitety v USA ne oblagaetsya nalogami! Tak chto firmy tratyat
den'gi "deshevle", i pri tom rezul'tat raduet glaz.
     Teper'  dlya  dvumernoj  grafiki  v  UNIX  poyavilsya  eshche  i
OpenStep - ta  samaya  ob®ektno-orientirovannaya
graficheskaya sreda, chto Stiv Dzhobs na NeXT-ah sochinil.
     Da, eshche yazyk dvumernoj grafiki PostScript
prochno obosnovalsya v  UNIX.   Vmeste  s  vozmozhnost'yu  risovat'
PostScript obrazy v okoshkah (a ravno pechatat' ih na printer).
     Nu,  multimedia  i video eshche tol'ko nachinayut svoyu istoriyu.
No i oni v X Window est'.


     UNIX  spravedlivo  rugayut  za  slozhnost' administrirovaniya
sistemy. U etogo est'  tol'ko  odno  opravdanie:  posle  nedel'
nastrojki  vsego,  chto tol'ko mozhno (i chto poroj ne nuzhno), vse
rabotaet kak tank. |tim priyatnym svojstvom drugie sistemy chasto
ne otlichayutsya.
     Problemy  zhe  sistemnogo  administratra  sostoyat,  glavnym
obrazom, v tom, chto on dolzhen  znat'  ochen'  mnogo  raznorodnyh
veshchej.  Prichem  veshchej  "universal'nyh":  yazykov  dlya oformleniya
chego-nibud'. YAzykov, a ne nabora menyu i ekrannyh  form.  Potomu
glavnye   instrumenty   UNIX-administratora   -  eto  tekstovyj
redaktor i tolstennoe spravochnoe rukovodstvo.
     Vot  tol'ko  koe-chto  dlya  administratora  Solaris
2: yazyki i produkty.
     
     Programmistu krome togo polezno znat' lex
i   yacc   -    generatory    leksicheskih    i
sintaksicheskih analizatorov (dlya postroeniya kompilyatorov).
     Da,  eshche  est'  massa  moguchih  i neochevidnyh v upravlenii
tekstovyh redaktorov:
     emacs,
     TeX,
     vi,
     ed,
     sed.
     A  eshche  on  dolzhen  umet'  chitat' bez slovarya angloyazychnuyu
tehnicheskuyu dokumentaciyu.
     Kstati,  raz  uzh rech' zashla i o programmistah: kak pravilo
razrabotchiki  (osobenno  fanatichnye)   ne   lyubyat   ni   pisat'
kommentarii,  ni  dokumentaciyu.   Sledstvie etogo takovo: proshche
zanovo napisat'  programmu,  chem  dodelat'  ili  modificirovat'
chuzhuyu.  Iz  ploho  (ili sovsem ne-) dokumentirovannoj programmy
udaetsya nadergat' v luchshem sluchae otdel'nye funkcii. V itoge  -
massa   programm,  delayushchih  pochti  odno  i  to  zhe.  Svalka  i
raznosherstnost' rastut, kachestvo  zhe  -  sushchestvenno  medlennee
kolichestva.
     V   otnoshenii   sistemnogo  administratora  v  UNIX  verna
"obratnaya" pogovorka: "Dve golovy horosho, no odna -  luchshe".  V
silu  togo,  chto  u  seti,  rabotayushchej kak odna bol'shaya mashina,
dolzhen  byt'  odin   hozyain,   kotoryj   znaet
vse  tonkosti.   Emu  zhe  huzhe:  on dolzhen tak
mnogo znat' i pomnit'. No drugim - luchshe.   Potomu,  chto  kogda
kazhdyj  nachinaet  stavit'  opyty,  i  levaya  ruka ne znaet, chto
delaet pravaya noga  -  rezul'taty  poluchayutsya  uzhasayushchimi.  Mne
dovodilos'  videt' seti, kotorye administrirovalis' neskol'kimi
lyud'mi. Nekotorye iz nih byli  nekompetentny.  |to  uvelichivalo
rabotu  glavnogo administratora vdvoe i vtroe - emu prihodilos'
peredelyvat' vse za krivorukimi. S drugoj storony, odin chelovek
ne  mozhet  znat' vse. I dlya delaniya togo, chto on ne znaet - emu
sleduet prizvat' pomoshchnikov.  No tol'ko  pust'  oni  ne  delayut
nichego bol'she!
     Itak,  v  administrirovanii odna golova luchshe - ona pomnit
vse, obshchuyu kartinu.  No odna golova - i huzhe. V tom smysle, chto
esli  odin  zabolel,  uvolilsya, zagulyal - vse ostal'nye vryad li
bystro razberutsya v nakruchennyh im nastrojkah. Poetomu menedzher
dolzhen  trebovat' ot administratora zapisyvat'
hotya by mesta, imena fajlov i sistem,  kotorye
on nastraival. V luchshem zhe sluchae - vel by zhurnal.


     


	Okazyvaetsya, russkie programmisty v Rossii pishut na raznyh yazykah; no vse oni -
Russkij YAzyk. Est' massa russkih kodirovok, otlichayushchihsya poryadkom bukv, to
est' kakoj bukve pripisano kakoe chislovoe znachenie (encoding).
     
     A  podderzhivat'  prihoditsya  ih  vse  (ili po krajnej mere
bol'shinstvo), i pri tom - odnovremenno.
     Nu  i  eshche  upomyanem mul'tibajtovye kodirovki, gde russkie
bukvy  kodiruyutsya  voobshche  poka  neizvestno  kak.  A  eshche  est'
ukrainskie bukvy. I prochie.
     |to  velikoe "raznoobrazie" prichinyaet massu neudobstv. No,
gospoda, eto Rossiya - chto znachit -  shirota  dushi  i  absolyutnyj
bardak.
     Relax  and  enjoy it. Raz bardak odnazhdy nachalsya,
izbavit'sya ot nego udastsya ne skoro.
---------------------------------------------------------------
     Nu  i  v  kachestve  poslesloviya  - nazhmite na etu knopku i
prochtite tekst vverhu ekrana

Last-modified: Sat, 21 Mar 1998 12:30:03 GMT
Ocenite etot tekst: