CS270291A3 - Computer with a concept of enlarged virtual memory - Google Patents
Computer with a concept of enlarged virtual memory Download PDFInfo
- Publication number
- CS270291A3 CS270291A3 CS912702A CS270291A CS270291A3 CS 270291 A3 CS270291 A3 CS 270291A3 CS 912702 A CS912702 A CS 912702A CS 270291 A CS270291 A CS 270291A CS 270291 A3 CS270291 A3 CS 270291A3
- Authority
- CS
- Czechoslovakia
- Prior art keywords
- dynamic
- segment
- segments
- class
- space
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
- Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
- Control Of Eletrric Generators (AREA)
- Control Of Positive-Displacement Air Blowers (AREA)
- Devices For Executing Special Programs (AREA)
Description
η Γ l o' o __ *- X Ó 1 to t
W 7.102-WZ
Počítač s koncepci rozšířené virtuální Pamfetl
Oblast techniky
Vynález se týká počítače včetně operačního systému,který obsahuje organizační koncepci virtuální paměti poafeky-tující paměťový prostor pro paralelní provádění programův předběžně přidělěných segmentech paměti virtuálních adresobsahujících sdílené oblasti a vyhrazené oblasti v několikaadresnich prostorech.
S.tay_-t,echn,ikY
Package Version4. 1 , podrobně
Takový počítač a speciálně takový operační systém je natrhu například pod názvem Virtual Storage Extended/System4 Release 1, v následujícím krátce VSE/SPpopsaný například v příslušných manuálech, z nichž je zde pro účely odkazu citován Administration, FormNumber SC33-6405-01. Operační systém VSE/SF' 4.1 obsahujeprogram VSE/Advanced Functions (v následujícím krátceVSE/AF), stejně jako další, z nichž by měl být také zmíněnprogram VSE/POWER. Odkazuje se na manuál VSE/Advanced Func-tions System Managment Guide Version 4 Release 1, Form Num-ber SC33-6352-00. V tomto manuálu, zvlášť na stranách 1 až20, je podán podrobný popis týkající se např. multiprogramo-vání, virtuální paměti a organizace reálné paměti, segmentů,stejně jako přidělování paměti. V běžném systému je virtuální paměť omezena na 12 seg-mentů v maximálně devíti adresnich prostorech. To vyžaduje velmi pečlivé av daných adresnich obtížné přidělování paměťového prostoruprostorech programům, aby se tyto mohly zpracovávat paralelně. Toto podstatně omezuje možnost para- lelního provádění programů, a tak činí systém poněkud nep-ružným.
Pod s ta tay yn,á 1 e..su Základním předmětem předkládaného vynálezu je učinitsystém flexibilnějším, zvětšit zdroje virtuální paměti tak,že lehce může být prováděno paralelně více programů, a při-jatelným pro existující systém.
Tyto a jiné předměty jsou řešeny zásadně aplikací vlas-tností ukázaných níže v hlavním patentovém nároku 1.
Takto nově zavedenými dynamickými segmenty, které jsoupřidělovány společně se zakázkou a uvolňovány s ukončenímzakázky, je poskytnuto ohromné rozšíření oblasti virtuálnípaměti až o (nebo více) 200 nových segmentů. To znamená, žemnohem více programů může být prováděno paralelně a že dnesexistující systémová omezení jsou překonána.
Další příznivé vývody jsou ukázány dole v závislých pa-tentových podnárocích. Jejich specifické rysy a výhody sebuď ozřejmí samy nebo budou vysvětleny ve spojitosti s nás-ledujícím podrobnějším popisem. Přehled obrázků na výkresech V dalším bude vynález podrobněji vysvětlen ve spojitos-ti s ukázaným a popsaným ztělesněním a obrázky, z nichž: obr. 1 ukazuje rozvržení paměti známé z dřívějšího sta-vu znalostí jako předběžně přidělené nebo statické segmenty,obr. 2 ukazuje vedle sebe rozvržení adresního prostorupro statické segmenty a pro dynamické segmenty ve shodě s vynálezem, obr. 3 ukazuje příklad rozvržení paměti s dynamickými segmenty ve shodě s vynálezem obr. 4 ukazuje obrazovkové menu se scénářem pro výběrúlohy: udržované dynamické segmenty, obr, 5 ukazuje obrazovkové menu se scénářem pro přidánídynamické třídy, obr, 6 ukazuje obrazovkové menu se scénářem definovánídynamické třídy X, obr. 7 ukazuje obrazovkové menu se scénářem pro zapsánízměněné tabulky dynamických tříd do knihovny, obr. S ukazuje obraz systémové konzole se scénářem za-vedení tabulky dynamických tříd, obr. 9 ukazuje obrazovkové menu se scénářem vytvořeníVSE/POWER zakázky (třída X), obr. 10 ukazuje obraz systémové konzole se scénářemVSE/POWER zakázky, která je právě prováděna.
Provedeni vynálezu
Pro lepěí porozumění pojmu dynamického segmentu a tomu,jak je tento pojem zaveden do operačního systému VSE, je po-dán ' krátký popis návrhu běžného segmentu. Ve spojitostis popisem vynálezu jsou běžné segmenty nazývané statické ne-bo předběžně přidělené segmenty. Předběžně přidělené, statické segmenty Běžná verze operačního systému VSE (VSE/SP 4.1) dovolu-je přidělit 12 segmentů až v devíti adresních prostorech.Adresní prostor obsahuje sdílenou oblast a vyhrazenou ob-last. Sdílená oblast je pro všechny adresní prostory stejná.Vyhrazená oblast se liší v závislosti na přidělení. Je možnépřidělit více než jeden segment v jedné vyhrazené oblasti.Statické segmenty mají následující předem definované identi-fikátory identifikačních statí Fl, F2, F3, F4, F5, F6, F7, F8, F9, FA, FB, BG. 4
Rozvržení paměti na obr. 1 zobrazuje jako příklad zná-mého dřívějšího stavu znalostí systém s pěti sektory BG,Fl, F2, F3 a F4 přidělenými v adresních prostorech 1 až 4.Jeden adresní prostor by mohl mít maximální velikost např.16 megabytů (MB). Adresní prostory jsou rozděleny na sdílenéoblasti a vyhrazenou oblast. Vyhrazená oblast je oblastprogramu pro provádění programu. Operátor nebo ASI (automa-tizovaná systémová inicializace) procedura může přidělovata spouštět segmenty a přidělovat prováděcí prioritu každémusegmentu. Toto předběžné přidělování statických segmentů jeprovedeno ve fázi nastavení systému.
Statické segmenty mohou dostat JCL (jazyk pro řízenízakázek) příkazy z fyzického snímače nebo z rozvrhujícíhoprogramu prací (job scheduler). V operačním systému VSE jerozvrhování prací, řízení zpracování a asynchronní zpracová-ní výstupu zakázky provedeno programem VSE/POWER, to jest,zakázka je programem VSE/POWER řízena. Program VSE/POWER(POWER znamená Priority Output Writer Execution Reáder a jeto licenční program firmy IBM prvotně použitý pro asynchron-ní vstup a výstup) může také spouštět statické segmentya zpracovávat v nich zakázky, to jest, program VSE/POWER do-dává příkazy JCL a data do segmentu. Zakázky jsou umístěnyve čtecí frontě. Výpis nebo výstup na děrovač může být smě-rován do odpovídájících front.
Statický segment je použitelný pro více než jednu za-kázku. Program VSE/POWER dovoluje provádět zakázky ve tří-dách, v tzv. VSE/POWER třídách, kterýmžto je přiřazen jedennebo více statických segmentů. Třída znamená skupinu zaká-zek, které buď přicházejí ze stejného vstupního zařízení ne-bo jsou nasměrovány na stejné výstupní zařízení.
Dynamické segmenty
Manipulační program pro zprostředkované soubory jakoprogram VSE/POWER přiděluje a spouští dynamický segment pro jednu zakázku. Program V5E/TOWER řídi provádění zakázkya uvolňuje dynamický segment po ukončení zakázky. Uvolněnápaměť je použitelná pro jinou zakázku.
Každý dynamický segment má svůj vlastní prostor, tojest, pouze jeden dynamický segment je přidělen ve vyhrazenéoblasti takového adresního prostoru. Více dynamických seg-mentů může být přidělováno najednou.
Aby byla redukována velikost sdílených oblastí, je proadresní prostory dynamických segmentů zavedena nová (vyhra-zená) systémová oblast nazývaná dynamický prostor GETVIS.Oblast dynamického prostoru GETVIS patří do vyhrazené oblas-ti. Obr. 2 ukazuje srovnání rozvržení adresního prostorustatického a dynamického segmentu. V levé části obr. 2 je ukázáno rozvržení statickéhosegmentu obsahující supervizor a sdílenou oblast ve sdíle-ných oblastech a oblast programu ve vyhrazené oblasti. Takéby tam mohla být obsažena oblast segmentu GETVIS. To je pa-měťový prostor uvnitř segmentu, který je použitelný pro do-časné přidělení k programu sdruženému s tímto segmentem. V pravé části obr. 2 je ukázáno rozvržení dynamickéhosegmentu ve shodě s provedením vynálezu. Jak může být vidětv porovnání s rozvržením statického segmentu je ve vyhrazenéoblasti poskytnuta oblast nazvaná oblast dynamického prosto-ru GETVIS.
Oblast dynamického prostoru GETVIS je přidělená dočasněspolu s dynamickým segmentem a obsahuje systémová data proadresní prostor. Tato systémová data jsou pro zakázku právějedna, a tím také pro přidělený dynamický segment. Proto ta-to data nejsou nutná pro jiné segmenty a nemusí být nutněobsažena ve sdílené oblasti. Tedy sdílená oblast je prostatěchto dat, a tak může být udržována meněí.
Dynamické segmenty mohou být seskupeny do tříd odpoví-dajících VSE/POWER třídám, ve kterých mohou být zakázky pro-váděny. Tyto třídy se nazývají dynamické třídy. Může být specifikována pouze priorita dynamické třídy.
Dynamické segmenty uvnitř jedné a téže třídy jsou časověrozděleny.
Statické a dynamické segmenty mohou být seskupenyv jedné VSE/FOWER třídě.
Tabulka, tzv. tabulka dynamických tříd, obsahuje atri-buty dynamických tříd. Tabulka dynamických tříd mčlže být ka-talogizovaná v knihovně, odkud může být zaváděna. Některé příklady atributů tabulky dynamických tříd jsou: - přidělování paměti: specifikuje požadavky na kapacitu paměti dynamickéhosegnentu (vyhrazeni dynamického prostoru GETVIS a segmentu)dané třídy, - velikost segmentu: definuje velikost souvislé virtuální oaměti v segmentu,která je rezervovaná pro provádění programu, zbytek segmentuje použitelný jako oblast segmentu GETVIS, - velikost dynamického prostoru GETVIS: definuje množství souvislé virtuální paměti pro oblastdynamického prostoru GETVIS (viz obr. 2), - profil (procedura): bude proveden v segmentu před zakázkou (odpovídá proce-duře ASI statických segmentů), - maximální počet dynamických segmentů ve třídě: specifikuje maximální počet segmentů, které mohou býtvyhrazené paralelně uvnitř dané třídy, je-li k dispozicidostatek virtuální paměti a dynamických segmentů, -indikace nepřistupnosti: dovoluje znepřístupnit dynamickou třídu, takže žádná ~r
Z zakázka nemůže být prováděna v této třídě, - manipulovaná vstupní/výstupní zařízení: specifikuje manipulovaná zařízení, např. snímač, tis- kárny a děrovače, které se propojují na program VSE/POWER.
Identifikace dynamického segmentu jsou sestaveny násle-dovně : <jzlass/> ^fpno/* , kde <^class^> = dynamická třída (jeden znak definovaný uži-vatelem) , číslo segmentu uvnitř4 dynamické třídy.
Například první dynamický segment vyhrazený v dynamickétřídě P přijímá identifikaci F’1. Následující příklad, jak je ukázáno na obr. 3, zobrazu-je rozvržení paměti se segmenty BG, F1-F8 v adresních pros-torech 1 až 4, dynamické segmenty dynamické třídy N v adres-ních prostorech Ní a N2, jeden dynamický segment v adresnímprostoru P2 a jeden dynamický segment v adresním prostoru04. V příkladu rozvržení paměti ukázaném na obr. 3 jsouv dynamické třídě N v dané chvíli přidělené pouze adresníprostory NI a N2, kdežto ostatní adresní prostory v tétotřídě nejsou aktivní. To samé platí pro adresní prostor P2třídy P, kde P2 je jediný aktivní dynamický segment třídy P.Na ukázaném příkladu je ze třídy 0 aktivní pouze adresníprostor 04. Sestava tohoto příkladu ukazuje, že pouze tytozmíněné dynamické segmenty jsou aktivní v oblasti virtuálnípaměti, že skutečně pouze tyto mají prováděné zakázky. Jest-liže zakázky přidělené dynamickým segmentům nejsou aktivní,jejich přidělená virtuální paměť může být použita k jinýmúčelům. Toto ukazuje, že pojem dynamického segmentu poskytu-je optimální využití virtuální paměti, které může být použi-to, poněvadž vždy pouze tato virtuální paměť ze společné ob-lasti volné paměti je použita, což je skutečně potřebné. 8
Dynamické segmenty a lehkost, použití Následující položky ukazují, jak je lehké zpracovávatzakázky v dynamických segmentech: 1. Definice:
Tabulka dynamických tříd dovoluje definovat atributydynamických segmentů pouze v několika příkazech (viz téžobr. 5, 6 a 7). 2. Dynamické segmenty vyhrazené v případě potřeby:
Dynamické segmenty jsou přidělované pouze tehdy, kdyžmá být zakázka provedena v dynamické třídě. Toto šetří sys-témové provozní prostředky. Jestliže VSE/POWER třída obsahu-je statické a dynamické segmenty, budou pro provádění zakáz-ky obvykle nejdříve použity statické segmenty. 3. Automatické přidělování, inicializace a uvolňování
Prostředí zakázky a provozní prostředky jsou přidělová-ny a uvolňovány automaticky bez uživatelova zásahu. 4. Identické přidělování prostředků uvnitř jedné dynamickétřídy:
Provozní prostředky potřebné pro zakázku jsou přidělo-vány před prováděním zakázky. 5. Dávkování Času:
Neexistuje žádná potřeba řídit zakázky intenzívně vyu-žívající CPU, protože poté, co časové kvantum zakázky je vy-čerpáno, je zakázka přesunuta do pozice s nejnižěí prioritouuvnitř dynamické třídy. 6. Přesun ze statických do dynamických segmentů:
Je snadné přesunovat zakázky do dynamických segmentů, 9 protože konstrukce se vyhýbá neslučitelnostem.
Koncepce
Koncepce ukazuje, jak mohou být dynamické třídy defino-vány a jak jsou dynamické segmenty vytvářeny a uvolňovány,když jsou použitelné systémové provozní prostředky (např.virtuální paměť). Následující odstavce popisují:a/ technickou údržbu tabulky dynamických tříd,b/ přidělování dynamického segmentu, c/ provádění zakázky. 1/ zadejte zakázku ke zpraconání v dynamické třídě 2/ program VSE/POWER požaduje vyhrazení dynamického segmentu- vytvořte dynamický segment 3/ program VSE/POWER spouští dynamický segment - učiňte dy-namický segment schopným odbavování4/ inicializace dynamického segmentu - inicializace adresniho prostoru - běh profilu dynamické třídy5/ provádění zakázky 6/ konec zpracování zakázky 7/ dezaktivace dynamického segmentu - uvolněte systémové provozní prostředky - zastavte segment — učiňte dynamický segment neschopným odbavová-n í 8/ uvolněte dynamický segment - odstraňte segment z přidělovací fronty Údržba tabulky dynamických tříd (vytváření, ukládání a zavá- děn í ) 10
Libovolný editor nebo OSE dialog může vytvářet a měnittabulku dynamických tříd. Jsou použitelné služby pro uloženítabulky do knihovny, odkud operátor nebo VSE/POWER ASI pro-cedura může tabulku zavést.
Zaváděcí proces zkontroluje platnost hodnot tabulky dy-namických tříd a přeloží informace do vnitřní reprezentace.Chybné vstupy jsou zobrazeny na konzol i.Pouze bezchybnévstupy mohou být aktivovány, to jest, tabulka dynamickýchtříd je uložena do systémové paměti, tj. je adresovatelnásystémovými standardními programy. Dynamické třídy získávajípředem definovanou prioritu výběru ke zpracování. Operátormůže změnit prioritu příkazem priority. Následující žádost o zavedení může změnit nebo odstra-nit vstupy tabulky dynamických tříd. Žádost o zavedení jeodmítnuta, když dynamická třída, která se má odstranit, mápřidělené dynamické segmenty. Přidělování
Jeden segment operačního systému VSE se skládá z hlavnízakázky a připojených podzakázek, přitom hlavní zakázka mávždy nejnižěí priorotu uvnitř segmentu. Běžný operační systém VSE (VSE/SP 4.1) má dvouúrovňovéschéma přidělování: 1. Segment s nejvyšší prioritou připravený ke zpracování jevybrán z dispečerské fronty. 2. (Pod)zakázka s odpovídající nejvyšší prioritou připrave-ná ke zpracování je vybrána a odbavena.
Podporou dynamických segmentů je pro dynamické segmentyzavedena nová úroveň přidělování. Každá dynamická třída másvou vlastní dispečerskou frontu, která má vstupy pro všech-ny vyhrazené dynamické segmenty dané třídy. Jak bylo dřívezmíněno, dynamické třídy jsou zahrnuté do dispečerské fron-ty, což vede k tříúrovňovému schématu přidělování: lí 1. Statický segment s nejvyšší prioritou nebo dynamickátřída připravená ke zpracování se vybere z dispečerskéfronty. 2. Je-li vybrána dynamická třída, je určen dynamický seg-ment s nejvyšší prioritou z této ke zpracování připrave-n é třídy. 3. Odpovídající (pod)zakázka s nejvyšší prioritou připrave-ná ke zpracování je vybrána a přidělena.
Operátor nebo inicializační procedura systému může změ-nit prioritu statických segmentů a dynamických tříd. Aby by-lo odstraněno to, že segment nebo třída intenzívně využíva-jící CPU může zastavit přidělování segmentů nebo tříd s niž-ší prioritou, operační systém VSE dovoluje definovat skupinuvyvážených časových intervalů. Člen této skupiny (statickýsegment nebo dynamická třída), který spotřeboval svůj časovýinterval, získává uvnitř této skupiny pozici s nejnižší pri-oritou. Jestliže více než jeden dynamický segment je přidě-len uvnitř dané dynamické třídy, je použita stejná metoda.
Provádění zakázky Výběr zakázky pro zpracování v dynamické třídě je mož-ný, jestliže je dynamická třída zpřístupněna. Toto je ozná-meno v zavedené tabulce dynamických tříd a může být změněnojiným požadavkem na zavedení nebo příkazem. Následující odstavce popisují zpracování poté, co bylanalezena zakázka pro zpřístupněnou tabulku dynamických tříd.Pro přidělování a spouštění dynamického segmentu požadujeprogram VSE/POWER vyhrazení dynamického segmentu. Přidělova-cí služba vytvoří segmentový identifikátor, přidělí a inici-alizuje řídící bloky a vytvoří adresní prostor. Dynamickýsegment je zahrnut do dispečerské fronty dynamických tříd.Služba spouštění segmentu činí dynamický segment schopným 12 Přidělování, tj. připraveným ke spouštění, a spouští inicia-lizaci. Je-li druhý dynamický segment vyhrazen uvnitř stejnédynamické třídy, je pro tuto dynamickou třídu spuštěno dáv-kování času. Během inicializace dynamického segmentu je adresníprostor zkontrolován, je zaveden program pro řízení pracía dynamický segment je připraven. Několik systémových stan-dardních programů může být provedeno během přípravných pra-cí. Program pro řízení prací provádí profil. Jestliže seinicializace nemůže dokončit, segment bude zrušen, dezakti-vován, uvolněn a dynamická třída bude znepřístupněna, aby seznemožnilo provádění jiných zakázek. Po úspěšné inicializacije zakázka zpracována, to jest, program VSE/POWER předáváJCL a data do dynamického segmentu. Program VSE/POWER vyža-duje dezaktivaci, když je dosaženo konce zakázky.
Pro dezaktivaci dynamického segmentu se oznamuje systé-movým standardním programům vyvolávaným během přípravnýchprací, že je požadována dezaktivace. Systém uvolňuje provoz-ní prostředky, zastavuje dynamický segment a činí segmentneschopným přidělováni. Program VSE/POWER segment uvolňuje.
Pro uvolnění dynamického segmentu uvolňovací službauvolňuje segmentový identifikátor a systémový prostor přidě-lený řídícím informacím (řídící bloky). Odstraňuje dynamickýsegment z přidělovací fronty dynamických tříd. Jestliže pou-ze jeden dynamický segment zůstává v dynamické třídě, budepro tuto dynamickou třídu vynulováno dávkování času.
Ve spojitosti s obr. 4 až 10 bude popsána definicea užití dynamické třídy, tedy dynamického segmentu. Obrázkyukazují obrazovková menu nebo panely. Interaktivní dialogmezi systémem a uživatelem se provádí pomocí těchto panelů.
Ukázaný scénář je použit k definici dynamické třídy,k zaktualizování tabulky dynamických tříd v systémové kni-hovně, k aktivování tabulky dynamických tříd užitím příkazuPLOAD programu VSE/POWER a provedení zakázky programuVSE/POWER v definované dynamické třídě. 13
Na obr. 4 je ukázán panel "resource definition" (defi-nice prostředků). V tomto panelu pod číslem 7 může být pro-veden výběr "maintain dynamic partitions" (udržované dyna-mické segmenty) vstupem čísla 7. Výběrem provedeným ve shodě s obr. 4 se objeví panelzobrazený na obr. 5 "maintain dynamic partitions" (udržovanédynamické segmenty). Pro definici a připojení nové dynamickétřídy v panelu zobrazeném na obr. 5 je vybrána možnost1=ADD. Toto vede 1; panelu zobrazeném na obr, 6. Tento obrá-zek ukazuje v levém sloupci v podstatě atributy dynamickétřídy a v pravém sloupci vysvětlení těchto atributů. Pro de-finování dynamické třídy je vložen do prostředního sloupcenapříklad znak X. Tato dynamická třída by měla S segmentů,každý s oblastí vyhrazeného prostoru o 3 megabytech (MB)a s velikostí programu 1 megabyte (MB).' Oblast dynamickéhoprostoru GETVIS je nastavena na 64 kilobytů (kB), atribut"enabled" je nastaven na 1, což znamená, že třída je zpřís-tupněna. Profil, který má být zpracován je JCL proceduraSTDPROF. Všechny ostatní položky jsou nastaveny na implicit-ní hodnoty. Jestliže jsou všechny tyto hodnoty nastaveny,jsou zavedeny stlačením spouštěcí klávesy. Tím se opět zobrazí panel "maintain dynamic partitions"(udržované dynamické segmenty), ale nyní ukazující v řádku4 připojenou dynamickou třídu X se všemi atributy, jak jeoznačeno na obr. 7. Tak, jestliže je obr. 7 srovnán s pane-lem zobrazeným na obr. 5, existují nyní čtyři dynamické tří-dy C, Y, Za X. Stisknutím funkce "process" (zpracovat),která je spojena s funkční klávesou 5, se zobrazená tabulkadynamických tříd nyní zapíše jako nová kopie do systémovéknihovny. Tak jsou nyní v systému definované a po aktivacipoužitelné dynamické segmenty ve čtyřech různých třídáchs maximálním počtem 28 dynamických segmentů.
Obr. 8 ukazuje panel pro aktivaci tabulky dynamickýchtříd. Tabulka dynamických tříd, tedy i dynamická třída X,může být použita po vyslání příkazu PLOAD DYNCTAB programu 14 VSE/POWER ze systémové konzole. Potom systém zobrazí aktivnídynamické třídy. Jak je znázorněno na obr. S, žádný ze seg-mentů ve čtyřech třídách není v danou chvíli aktivní. Jak jeindikováno v řídku 09, tabulka dynamických tříd byla úspěšnězavedena.
Nyní je možné zpracovat zakázku. K této závěrečné čin-nosti je zadán proud prací programu VSE/POWER s dynamickoutřídou X na pozici parametru třídy příkazu zakázky programuVSE/POWER. Obr. 9 ukazuje scénář, jak taková zakázka vypadá.
Panel zobrazený na obr. 10 ukazuje, jak zakázka vypadápři svém provádění. Když bude dynamický segment uvnitř dyna-mické třídy X použitelný, tato zakázka bude provedena, jakona ukázaném příkladu, v dynamickém segmentu XI. Po ukončenítéto zakázky bude tento dynamický segment uvolněn a budepoužitelný pro jinou zakázku. Výhody koncepce ve shodě s vynálezem jsou, že uživatelmusí pouze definovat systémové provozní prostředky použitel-né dynamickými segmenty (např. kapacitu virtuální paměti,tabulku dynamických tříd). Provádění zakázky, včetně přidě-lení segmentu a uvolnění segmentu, je prováděno systémem, tojest, systémové provozní prostředky jsou použity pouze teh-dy, jsou—li potřeba. Není obtížné přesouvat zakázky ze sta-tických do dynamických segmentů, poněvadž neslučitelnosti(řídící bloky, služby apod.) jsou pokud možno minimalizová-ny. Předkládaný vynález poskytuje pro operační systém VSEdodatečné, nové segmenty. Tím může být prováděno paralelněmnohem více programů. Koncepce je velmi pružná a přenositel-ná do jiných operačních systémů. Tím je pojem dynamickéhosegmentu otevřen pro další rozšiřování. 15
Dodatek :
Definice Některé definice v tomto slovníku jsou zkopíroványz manuálu IBM VSE/AF Planning and Installation Version 4 Re-lease 1, SC33-6351.
A adress space (adresní prostor)
Pododdíl celkové virtuální paměti. ASI - automated systém initialization (automatizovaná systé-mová iniciálizace)
Funkce, která dovoluje, aby řídící informace pro systémovouinicializaci byly katalogizovány pro automatické vyhledáváníběhem systémové iniciálizace. ASI proceduře (procedura)
Množina řídících příkazQ, které specifikují hodnoty pro au-tomatickou systémovou iniciálizaci.
C control program (řídící program)
Program ve strojovém kódu navržený k rozvržení programůa dohlížení na provádění programů počítačového systému.
D dynamic partition (dynamický segment)
Segment přidělený pro jednu zakázku, vytvořený a aktivovanýna základě potřeby. Po zpracování zakázky je obsazený pros- 16 tor uvolněn.
G GETVIS area (oblast)
Paměťový prostor uvnitř segmentu nebo sdílené virtuální ob-lasti použitelný pro dočasné přidělování programům.
J job (zakázka) /1/ Množina dat, která pro počítač úplně definuje jednotkupráce. Zakázka obvykle obsahuje věechny nutné programy vestrojovém kódu, spojky, soubory a instrukce operačnímu sys-tému. /2/ Skutečné zpracování jednotky práce počítačem. JCL - job control language (jazyk pro řízení prací) Řídící jazyk, který může být použit: /a/ k identifikaci zakázky operačnímu systému, /b/ k popsání požadavků zakázky.
M main task (hlavní úloha)
Segment je spuštěn jednou úlohou zvanou hlavní úloha. Tatoúloha provádí zakázku a může zřídit další úlohy (podúlohy).
P partition (segment)
Oddíl adresní ho prostoru, který je použitelný pro prováděníprogramu. Avšak řídící program supervizoru nemůže běžetv tomto prostoru. 17 přiváté area (vyhrazené oblast)
Oddíl adresního prostoru, kde mohou být přiděleny jeden nebovíce segmentů, specifický mezi všemi jinými adresními pros-tory . program (program)
Posloupnost instrukcí vhodná ke zpracování počítačem. program area (oblast programu)
Oblast segmentu, kam má být zaveden program.
S shared area(s) (sdílená(é) oblast(i))
Oddíl adresního prostoru společný pro všechny adresní pros-tory. Sdílené segmenty, sdílená virtuální oblast a supervi-zor patří do sdílené oblasti. shared partition (sdílený segment) V operačním systému VSE segment přidělený programu, kterýposkytuje služby pro programy a komunikuje s programy v ji-ných segmentech systémového prostoru virtuálních adres. Sdí-lený segment je část sdílených oblastí. shared Virtual area (SVA) (sdílená virtuální oblast) V operačním systému VSE oblast, která obsahuje seznam častoužívaných fází, rezidentní programy společné pro segmentya oblast pro podporu systému. spooling (spooling, souběžná periférní operace)
Snímání a zapisování vstupních a výstupních proudů dat napomocném zařízení ve formátu vhodném pro pozdější zpracovánínebo výstup. static partition (statický segment) 18
Segment, který je přidělen operátorem nebo ASI procedurou a je obvykle použitelný pro více než jednu zakázku. subtask (podúloha) Úloha, která je inicializována hlavní úlohou nebo jinou(pod)úlohou. supervisor (supervizor) Část řídícího programu, která koordinuje užití provozníchprostředků a udržuje průběh procesorových operací.
T task (úloha) Základní jednotka synchronního provádění programu. Úlohasoutěží s jinými úlohami o systémové provozní prostředky,jako jsou doba zpracování a vstupní/výstupní kanály. time slicing (dávkování času)
Režim provozu, ve kterém jsou několika procesům přiřazenakvanta času stejného procesoru.
V
VSE/POWER
Licenční program firmy IBM primárně použitý pro zprostředko-vání vstupu a výstupu, je to zkratka pro Virtual StorageExtended/Priority Output Writer Execution Reader.
Claims (10)
19 PV2-^2-í^ i -O ( » -η. I- f 1 o 7 O - Cl· { Of — c ( 1 1 ·< Π { X r* ¢3 co CO J ÍJ ! —.> s ....·< í ϋ PATENTOVÉ
1. Počítač S koncepcifvirtuální paměti, ječ poskytuje paměťo-vý prostor pro paralelní provádění programů v předběžně při-dělených segmentech paměti virtuálních adres, obsahujícísdílené oblasti a vyhrazené oblasti v několika adresníchprostorech vyznačený tím, že v závislosti na zakázce, kterámá být zpracována, jeden <=hbo více dynamických segmentů(F'1, P2,...,N1, N2,...,01, 02,...) je navíc přiděleno kezmíněným předběžně přiděleným segmentům (Fl-FS, FA, FB, BG)a uvolněno po ukončení zakázky, aby používaná oblast pamětibyla neobsazená pro následující použití.
2. Počítač podle nároku 1 vyznačený tím, že v něm každýdynamický segment má svůj vlastní adresní prostor a každýdynamický segment je vytvořen ve vyhrazené oblasti takovéhoadresní ho prostoru.
3. Počítač podle nároku 1 nebo 2 vyznačený tím, žev něm více dynamických segmentů může být přidělováno najed-nou.
4. Počítač podle libovolného z předchozích nároků vyz-načený tím, že v něm pro zmenšení velikosti sdílené oblastije poskytnuta vyhrazená systémová oblast ve vyhrazené oblas-ti pro adresní prostory dynamických segmentůz oblast dyna-mického prostoru GETVIS , která obsahuje systémová data proadresní prostor a je dočasně přidělována společně se zmíně-ným dynamickým segmentem.
5. Počítač podle libovolného z předchozích nároků vyz- 20 načený tím, Se v něm zmíněné dynamické segmenty jsou sesku-peny do dynamických tříd , ve kterých jsou zakázky proveditelné.
6. Počítač podle nároku 5 vyznačený tím, že v něm můžebýt specifikována priorita zmíněné dynamické třídy.
7. Počítač podle nároku 5 nebo 6 vyznačený tím, Sev něm dynamické segmenty uvnitř stejné třídy jsou časovědávkovány.
8. Počítač podle libovolného z nároků 5 až 7 vyznačenýtím, Se v něm předběžně přidělené statické a dynamickésegmenty mohou být seskupeny v jednu a tutéž třídu.
9. Počítač podle libovolného z předchozích nároků vyz-načený tím, Se v něm je poskytnuta tabulka dynamic- kých tříd. obsahující atributy zmíněných dynamických segmen-tů, přičemž zmíněná tabulka dynamických atributů může býtkatalogizována v knihovně, odkud může být zavedena.
10. Počítač podle nároku 9 vyznačený tím, že v něm něk-teré atributy dynamické tabulky jsou: a/ rezervace paměti, specifikující požadavek na kapacitu paměti dynamickéhosegmentu, zvláště pro dynamický prostor GETVIS a vyhrazenísegmentu, dané třídy, b/ velikost segmentu, definující množství souvislé virtuální paměti v segmen-tu vyhrazené pro provádění programu, c/ velikost dynamického prostoru GETVIS, definující množství souvislé virtuální paměti pro ob-last dynamického prostoru GETVIS, d/ profil nebo procedura, specifikující profil nebo proceduru, která bude prove- 21 děna v segmentu před zakázkou, e/ maximální počet dynamických segmentů uvnitř jedné t ř í d y, specifikujíci maximální počet segmentů, které mohou býtparalelně vyhrazeny uvnitř dané třídy, když je použitelnýdostatek virtuální paměti a dynamických segmentů, f/ indikace znepřístupněni, dovolující znepřístupnit dynamickou třídu, tj., žádnázakázka nemůže být provedena uvnitř této třídy, g/ manipulovaná vstupní/výstupni zařízení,specifikující manipulovaná zařízení, např. snímač, tiskárnu,děrovače, které se propojuji na vstupní/výstupní převíjecímechanismus.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP90116847A EP0473802B1 (en) | 1990-09-03 | 1990-09-03 | Computer with extended virtual storage concept |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CS270291A3 true CS270291A3 (en) | 1992-04-15 |
| CZ290434B6 CZ290434B6 (cs) | 2002-07-17 |
Family
ID=8204412
Country Status (11)
| Country | Link |
|---|---|
| US (1) | US5790852A (cs) |
| EP (1) | EP0473802B1 (cs) |
| JP (1) | JPH079631B2 (cs) |
| AT (1) | ATE130112T1 (cs) |
| BR (1) | BR9103711A (cs) |
| CA (1) | CA2050175A1 (cs) |
| CZ (1) | CZ290434B6 (cs) |
| DE (1) | DE69023499T2 (cs) |
| HU (1) | HU216474B (cs) |
| MX (1) | MX9100916A (cs) |
| PL (1) | PL168338B1 (cs) |
Families Citing this family (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04348434A (ja) * | 1991-05-27 | 1992-12-03 | Hitachi Ltd | 仮想計算機システム |
| JPH0635732A (ja) * | 1992-07-14 | 1994-02-10 | Hitachi Ltd | 記憶装置の領域割り当て方法 |
| JPH07182239A (ja) * | 1993-12-24 | 1995-07-21 | Nec Corp | セグメント分割管理システム |
| JPH08286932A (ja) * | 1995-04-11 | 1996-11-01 | Hitachi Ltd | ジョブの並列実行制御方法 |
| US6681239B1 (en) * | 1996-12-23 | 2004-01-20 | International Business Machines Corporation | Computer system having shared address space among multiple virtual address spaces |
| US6658526B2 (en) * | 1997-03-12 | 2003-12-02 | Storage Technology Corporation | Network attached virtual data storage subsystem |
| DE69930855T2 (de) * | 1998-07-24 | 2006-11-23 | Sun Microsystems, Inc., Santa Clara | Verfahren und vorrichtung zur durchführung einer deterministischen speicherzuordnungsantwort in einem computer-system |
| US6657955B1 (en) * | 1999-05-27 | 2003-12-02 | Alcatel Canada Inc. | Buffering system employing per traffic flow accounting congestion control |
| US7468802B1 (en) | 2000-04-17 | 2008-12-23 | International Business Machines Corporation | Method and apparatus for processing print jobs via parallel spooling and despooling operations |
| US6832378B1 (en) * | 2000-06-20 | 2004-12-14 | International Business Machines Corporation | Parallel software processing system |
| US7720821B1 (en) | 2000-06-30 | 2010-05-18 | Sony Corporation | Method of and apparatus for writing and reading time sensitive data within a storage device |
| US6931639B1 (en) * | 2000-08-24 | 2005-08-16 | International Business Machines Corporation | Method for implementing a variable-partitioned queue for simultaneous multithreaded processors |
| JP4484396B2 (ja) * | 2001-05-18 | 2010-06-16 | 株式会社日立製作所 | タービン動翼 |
| US6898705B2 (en) * | 2001-05-31 | 2005-05-24 | International Business Machines Corporation | Automatic appliance server re-provision/re-purposing method |
| AU2003290706A1 (en) | 2002-11-08 | 2004-06-03 | Crossroads Systems, Inc. | System and method for controlling access to media libraries |
| US20040128494A1 (en) * | 2002-12-27 | 2004-07-01 | Zimmer Vincent J. | Method and apparatus for deploying managed code in a pre-boot environment |
| US7852856B2 (en) * | 2003-08-29 | 2010-12-14 | Broadcom Corp. | System and method for providing pooling or dynamic allocation of connection context data |
| JP4257783B2 (ja) * | 2003-10-23 | 2009-04-22 | 株式会社日立製作所 | 論理分割可能な記憶装置及び記憶装置システム |
| JP4227035B2 (ja) * | 2004-02-03 | 2009-02-18 | 株式会社日立製作所 | 計算機システム、管理装置、ストレージ装置及びコンピュータ装置 |
| JP2005267008A (ja) | 2004-03-17 | 2005-09-29 | Hitachi Ltd | ストレージ管理方法およびストレージ管理システム |
| US7428613B1 (en) | 2004-06-29 | 2008-09-23 | Crossroads Systems, Inc. | System and method for centralized partitioned library mapping |
| US7454565B1 (en) * | 2004-06-29 | 2008-11-18 | Crossroads Systems, Inc | System and method for distributed partitioned library mapping |
| US7971006B2 (en) | 2005-01-28 | 2011-06-28 | Crossroads Systems, Inc. | System and method for handling status commands directed to partitioned media library |
| US7451291B2 (en) * | 2005-01-28 | 2008-11-11 | Crossroads Systems, Inc. | System and method for mode select handling for a partitioned media library |
| US7370173B2 (en) | 2005-01-28 | 2008-05-06 | Crossroads Systems, Inc. | Method and system for presenting contiguous element addresses for a partitioned media library |
| US7788413B1 (en) | 2005-04-29 | 2010-08-31 | Crossroads Systems, Inc. | Method and system for handling commands requesting movement of a data storage medium between physical media libraries |
| JP4993928B2 (ja) | 2006-03-23 | 2012-08-08 | 株式会社日立製作所 | 記憶システム及び記憶領域解放方法並びにストレージシステム |
| JP2009129165A (ja) * | 2007-11-22 | 2009-06-11 | Toshiba Corp | 画像処理装置及びその方法 |
| JP5159377B2 (ja) * | 2008-03-12 | 2013-03-06 | キヤノン株式会社 | 情報処理装置及び情報処理方法 |
| US8806426B2 (en) * | 2008-06-04 | 2014-08-12 | Microsoft Corporation | Configurable partitioning of parallel data for parallel processing |
| US9251149B2 (en) * | 2009-02-03 | 2016-02-02 | Bmc Software, Inc. | Data set size tracking and management |
| US9411517B2 (en) * | 2010-08-30 | 2016-08-09 | Vmware, Inc. | System software interfaces for space-optimized block devices |
| US9052825B2 (en) | 2010-08-30 | 2015-06-09 | Vmware, Inc. | System software interfaces for space-optimized block devices |
| US9235512B2 (en) * | 2013-01-18 | 2016-01-12 | Nvidia Corporation | System, method, and computer program product for graphics processing unit (GPU) demand paging |
| US9703501B2 (en) | 2015-09-30 | 2017-07-11 | International Business Machines Corporation | Virtual storage instrumentation for real time analytics |
| CN110046809B (zh) * | 2019-04-02 | 2021-11-19 | 中国工商银行股份有限公司 | 作业调度方法及装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4511964A (en) * | 1982-11-12 | 1985-04-16 | Hewlett-Packard Company | Dynamic physical memory mapping and management of independent programming environments |
| US5023773A (en) * | 1988-02-10 | 1991-06-11 | International Business Machines Corporation | Authorization for selective program access to data in multiple address spaces |
| US4965717A (en) * | 1988-12-09 | 1990-10-23 | Tandem Computers Incorporated | Multiple processor system having shared memory with private-write capability |
| US5117350A (en) * | 1988-12-15 | 1992-05-26 | Flashpoint Computer Corporation | Memory address mechanism in a distributed memory architecture |
-
1990
- 1990-09-03 EP EP90116847A patent/EP0473802B1/en not_active Expired - Lifetime
- 1990-09-03 AT AT90116847T patent/ATE130112T1/de not_active IP Right Cessation
- 1990-09-03 DE DE69023499T patent/DE69023499T2/de not_active Expired - Fee Related
-
1991
- 1991-06-13 JP JP3167523A patent/JPH079631B2/ja not_active Expired - Lifetime
- 1991-08-27 US US07/750,807 patent/US5790852A/en not_active Expired - Fee Related
- 1991-08-28 CA CA002050175A patent/CA2050175A1/en not_active Abandoned
- 1991-08-29 BR BR919103711A patent/BR9103711A/pt unknown
- 1991-09-02 CZ CS19912702A patent/CZ290434B6/cs not_active IP Right Cessation
- 1991-09-02 HU HU912843A patent/HU216474B/hu not_active IP Right Cessation
- 1991-09-03 PL PL91291601A patent/PL168338B1/pl not_active IP Right Cessation
- 1991-09-03 MX MX9100916A patent/MX9100916A/es unknown
Also Published As
| Publication number | Publication date |
|---|---|
| EP0473802B1 (en) | 1995-11-08 |
| JPH064405A (ja) | 1994-01-14 |
| JPH079631B2 (ja) | 1995-02-01 |
| CA2050175A1 (en) | 1992-03-04 |
| PL168338B1 (pl) | 1996-02-29 |
| BR9103711A (pt) | 1992-05-19 |
| EP0473802A1 (en) | 1992-03-11 |
| DE69023499D1 (de) | 1995-12-14 |
| ATE130112T1 (de) | 1995-11-15 |
| HU912843D0 (en) | 1992-01-28 |
| MX9100916A (es) | 1992-05-04 |
| PL291601A1 (en) | 1992-06-01 |
| DE69023499T2 (de) | 1996-06-20 |
| HUT58930A (en) | 1992-03-30 |
| HU216474B (hu) | 1999-06-28 |
| US5790852A (en) | 1998-08-04 |
| CZ290434B6 (cs) | 2002-07-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CS270291A3 (en) | Computer with a concept of enlarged virtual memory | |
| US5261097A (en) | Computer system and method for executing command scripts using multiple synchronized threads | |
| EP0250157B1 (en) | Data display system | |
| US5996026A (en) | Method and apparatus for connecting i/o channels between sub-channels and devices through virtual machines controlled by a hypervisor using ID and configuration information | |
| EP1978444A1 (en) | Apparatus and method for collecting resources which became unnecessary | |
| KR101458028B1 (ko) | 병렬 처리 장치 및 방법 | |
| US5355488A (en) | Method for adaptively building a library of program threads | |
| CN112346835A (zh) | 一种基于协程的调度处理方法及系统 | |
| EP0564388A2 (en) | Generalized control for starting of tasks (processes and threads) | |
| JP2002259146A (ja) | アプリケーション実行装置及び方法 | |
| JP2902746B2 (ja) | 仮想計算機制御方式 | |
| JPH0713823A (ja) | 仮想計算機システムにおけるファイル資源管理方式 | |
| McCullough et al. | A design for a multiple user multiprocessing system | |
| JPH05113894A (ja) | 仮想計算機システムにおけるフアイル資源管理方式 | |
| CN115048192A (zh) | 工作流调度方法和系统及工作流引擎 | |
| SI9111426A (sl) | Računalnik s konceptom podaljšanega virtualnega pomnilnika | |
| JP2522161B2 (ja) | 仮想計算機システムにおけるボリュ―ム資源管理方式 | |
| JPS63109555A (ja) | 仮想記憶空間サイズ動的変換方式 | |
| JP2001184222A (ja) | 分散処理装置、分散処理方法および記録媒体 | |
| JPS5860357A (ja) | タスク制御テ−ブル管理方式 | |
| JPS60181935A (ja) | タスク処理制御方式 | |
| JPH113235A (ja) | 仮想プロセッサによるタスク制御システム | |
| JPH03292528A (ja) | 計算機のファイル割り当て方法とその機構 | |
| JPH01297740A (ja) | 計算機のジョブ起動方法 | |
| JPH04333977A (ja) | 自動部品割り付け機能を持つ論理図編集方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PD00 | Pending as of 2000-06-30 in czech republic | ||
| MM4A | Patent lapsed due to non-payment of fee |
Effective date: 20060902 |