VyÜlo v t²denφku: COMPUTERWORLD
╚φslo:4/93
RoΦnφk:1993
Rubrika/kategorie: Co (ne)najdete ve slovnφku

zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek

Ji°φ Peterka

Handle

OperaΦnφ systΘm to opravdu nemß lehkΘ. Jako nadstavba nad "hol²m ₧elezem" mß za ·kol vytvo°it takovΘ pracovnφ prost°edφ, ve kterΘm by se jednotlivΘ aplikace mohly pln∞ soust°edit na svou prßci a nemusely se starat o r∙znΘ technickΘ detaily. A p°itom takov²chto detail∙, spojen²ch s ovlßdßnφm konkrΘtnφch technick²ch prost°edk∙, s organizacφ nejr∙zn∞jÜφch systΘmov²ch dat, soubor∙ Φi tabulek, se strategiemi p°φstupu ke sdφlen²m prost°edk∙m apod., je opravdu velmi mnoho.

Nap°φklad jen takovß "banßlnφ" Φinnost, jakou je Φtenφ Φi zßpis dat do souboru, se ve skuteΦnosti neobejde bez znalosti mnoha konkrΘtnφch detail∙ - nap°. p°esnΘho umφst∞nφ danΘho souboru na disku, resp. disket∞, formßtu tohoto disku Φi diskety, jeho logickΘ organizace, ovlßdßnφ p°φsluÜnΘho diskovΘho °adiΦe atd. V∞tÜina z t∞chto znalostφ a informacφ technickΘho charakteru p°itom m∙₧e z∙stat p°ed vlastnφmi aplikacemi skryta - t∞m by m∞lo staΦit, aby jednoznaΦn∞ identifikovaly ten soubor, se kter²m se mß p°φsluÜnß Φinnost provΘst, a s jak²mi daty. Ostatnφ by pak ji₧ m∞lo b²t jen na operaΦnφm systΘmu. I pro n∞j je koneckonc∙ v²hodn∞jÜφ, kdy₧ p°φsluÜnΘ technickΘ detaily z∙stanou p°ed aplikacemi utajeny a nebudou mu ruÜiv∞ zasahovat do jeho prßce.

Z∙sta≥me jeÜt∞ chvilku prßv∞ u prßce se soubory. Jestli₧e se n∞jakß aplikace rozhodne pracovat s urΦit²m souborem, musφ nejprve operaΦnφmu systΘmu sd∞lit, kter² konkrΘtnφ soubor mß na mysli - zadßnφm jeho jmΘna a p°φpony, p°φstupovΘ cesty k souboru, ev. logickΘ jednotky, na kterΘ se soubor nachßzφ, a p°φpadn∞ i dalÜφch ·daj∙. OperaΦnφ systΘm si pak sßm zalo₧φ vhodnou datovou strukturu (tabulku) a do nφ si poznamenß vÜe, co o p°φsluÜnΘm souboru pot°ebuje v∞d∞t, aby s nφm mohl skuteΦn∞ pracovat. P°i vÜech dalÜφch po₧adavcφch na operace s tφmto souborem ji₧ aplikace nemusφ znovu uvßd∞t jeho jmΘno a p°φponu, p°φstupovou cestu atd. Mφsto toho m∙₧e soubor jednoznaΦn∞ urΦit pouh²m odkazem na tuto datovou strukturu (tabulku). Samoz°ejm∞ za p°edpokladu, ₧e s touto mo₧nostφ poΦφtß i operaΦnφ systΘm a takov² odkaz aplikaci zp°φstupnφ - nap°φklad formou v²stupnφho parametru prvnφ operace nad souborem, kterou si aplikace vy₧ßdala.

KonkrΘtnφ forma tohoto odkazu, kterΘmu se v angliΦtin∞ °φkß handle, nenφ pro samotnou aplikaci relevantnφ, stejn∞ tak jako vlastnφ obsah datovΘ struktury, na kterou handle odkazuje. Obvykle nejde ani o skuteΦn² ukazatel, p°es kter² by se aplikace mohla k tΘto struktu°e dostat - pro operaΦnφ systΘm nemusφ b²t v∙bec ₧ßdoucφ, aby mu do jeho datov²ch struktur aplikace zasahovaly. NejΦast∞ji proto jde o odkaz ve form∞ indexu (resp. po°adovΘho Φφsla), jeho₧ interpretace je pln∞ v kompetenci operaΦnφho systΘmu. Tak je tomu nap°. i v operaΦnφm systΘmu MS DOS, kde je takov²to odkaz (handle) tvo°en cel²m Φφslem bez znamΘnka (v rozsahu 16 bit∙).

Velk²m o°φÜkem je ovÜem najφt vhodn² Φesk² ekvivalent anglickΘho termφnu "handle". V doslovnΘm p°ekladu jde o "rukoje¥", "dr₧adlo", "nßsadu" apod., co₧ vcelku vystihuje podstatu v∞ci, ale v praxi to nenφ dost dob°e pou₧itelnΘ. P°eklßdat anglickΘ "handle" jako "odkaz na soubor", bez naznaΦenφ formy a v²znamu tohoto odkazu v kontextu v²kladu, je zase a₧ p°φliÜ neurΦitΘ.

Jednu z mo₧nostφ, jak vy°eÜit tento zdßnliv∞ ne°eÜiteln² terminologick² problΘm, vÜak m∙₧eme najφt mal²m pohledem do historie.

P°ed n∞kolika lety, kdy₧ tuzemsk² elektrotechnick² pr∙mysl jeÜt∞ zßsoboval naÜe Ükolstvφ tφm nejlepÜφm, co dokßzal vyrobit - tedy obΦas i fungujφcφmi 8bitov²mi Ükolnφmi mikropoΦφtaΦi IQ 151 - rozhodlo se n∞kolik nadÜenc∙ na pra₧skΘ Matematicko-fyzikßlnφ fakult∞ ud∞lat z tΘto drahΘ hraΦky pou₧iteln² poΦφtaΦ a napsat pro n∞j plnohodnotn² operaΦnφ systΘm, vΦetn∞ p°ekladaΦ∙. Ani aktivnφ odpor tehdy kompetentnφch Φinitel∙ i Φßsti odbornΘ ve°ejnosti jim v tom nedokßzal zabrßnit, a tak sv∞tlo sv∞ta spat°il operaΦnφ systΘm AMOS. S odchodem mikropoΦφtaΦ∙ IQ 151 do muzeφ a depozitß°∙ sice op∞t ze sv∞ta zmizel, ale mnohΘ jeho myÜlenky a koncepΦnφ rysy jsou dodnes aktußlnφ.

P°φkladem m∙₧e b²t prßv∞ jeho zp∙sob prßce se soubory. Zatφmco nap°φklad do MS-DOSu byl v²Üe popsan² mechanismus pou₧φvßnφ odkazu na soubor (handle) vnesen vlastn∞ a₧ dodateΦn∞ (ve verzi 2.0), operaΦnφ systΘm AMOS pou₧φval obdobn² mechanismus ji₧ od zaΦßtku a implementoval jej snad v jeÜt∞ ΦistÜφ podob∞ ne₧ MS-DOS. Pro p°φsluÜnΘ odkazy na soubor takΘ zavedl p∙vodnφ ΦeskΘ oznaΦenφ: systΘmovß identifikace. To dob°e vystihuje skuteΦnost, ₧e jde o ·daj jednoznaΦn∞ identifikujφcφ konkrΘtnφ soubor a abstrahovan² od svΘ konkrΘtnφ formy.


zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek
Tento Φlßnek m∙₧e b²t voln∞ Üφ°en, pokud se tak d∞je pro studijnφ ·Φely, na nev²d∞leΦnΘm zßklad∞ a se zachovßnφm tohoto dov∞tku. Podrobnosti hledejte zde, resp. na adrese http://archiv.czech.net/copyleft.htm