Úvod do systémů hromadné obsluhy. charakteristika SHO: systém, který poskytuje obsluhu určitého typu

Podobné dokumenty
Úvod do simulace - 1

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Úvod do simulace - 1

Teorie front. Systém hromadné obsluhy

IMOSI - MODELACE A SIMULACE LEARN 2013 správně možná špatně

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

Exponenciální modely hromadné obsluhy

Teorie hromadné obsluhy (Queuing Theory)

4EK201 Matematické modelování. 8. Modely hromadné obsluhy

Kendallova klasifikace

Teorie hromadné obsluhy (Queuing Theory)

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Učební pomůcka Simulace Witness

Přerušovací systém s prioritním řetězem

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Časová a prostorová složitost algoritmů

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

POČÍTAČOVÁ SIMULACE PODNIKOVÝCH PROCESŮ. Ing. V. Glombíková, PhD.

Příklady ke cvičením. Modelování produkčních a logistických systémů

Algoritmizace. 1. Úvod. Algoritmus

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Řízení IO přenosů DMA řadičem

Struktura programu v době běhu

Algoritmizace a programování

Simulační model jednoduchého SHO

Stochastické procesy - pokračování

VISUAL BASIC. Přehled témat

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Konstruktory a destruktory

Teorie hromadné obsluhy

Počítač jako prostředek řízení. Struktura a organizace počítače

Programování v C++ 2, 4. cvičení

3 Co je algoritmus? Trocha historie Definice algoritmu Vlastnosti algoritmu... 3

4EK311 Operační výzkum. 8. Modely hromadné obsluhy

Simulační software Witness. Ing. Michal Dorda, Ph.D.

Programování v C++, 2. cvičení

Základní datové struktury

Řídicí struktury. alg3 1

Přidělování CPU Mgr. Josef Horálek

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

SYSTÉMY HROMADNÉ OBSLUHY. Teorie front

Synchronizace Mgr. Josef Horálek

Počítačová simulace logistických procesů II 4. přednáška - Analýza dat

Architektury počítačů a procesorů

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /

PRINCIPY OPERAČNÍCH SYSTÉMŮ

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Úvod do programování - Java. Cvičení č.4

Úvod do programovacích jazyků (Java)

Modelování procesů (2) Procesní řízení 1

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář

Programovací jazyk Pascal

Počítačová simulace logistických procesů II 10. přednáška Simulační experimentování

Infrastruktura UML. Modelování struktury v UML. Superstruktura UML. Notace objektů. Diagramy objektů

Generování pseudonáhodných. Ing. Michal Dorda, Ph.D.

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

ADS DOCHÁZKOVÝ SOFTWARE

3. Počítačové systémy

alkoholu v organismu, jízdu výtahů s lidmi...).

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Simulační modely. Kdy použít simulaci?

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

PODPROGRAMY PROCEDURY A FUNKCE

6 Příkazy řízení toku

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

3. Software Bakaláři Kompletní školení

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Počítačová simulace logistických procesů II 7. přednáška Struktura simulačního modelu

Úvod do SHO. Výkonnost a spolehlivost programových systémů KIV/VSS. Richard Lipka

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

zpravidla předpokládá, že hodnoty intenzity poruch a oprav jsou konstantní.

Procesy a vlákna - synchronizace

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Západočeská univerzita v Plzni

Implementace LL(1) překladů

Zpracování deklarací a přidělování paměti

2. lekce Algoritmus, cyklus Miroslav Jílek

VYUŽITÍ SIMULACE PŘI MODELOVÁNÍ PROVOZU NA SVÁŽNÉM PAHRBKU SEŘAĎOVACÍ STANICE

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5

Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu

1. a 2. přednáška. Základní pojmy. Model

Dijkstrův algoritmus

1. Téma 03 - Rozhodování

SIMULACE SPOLEHLIVOSTI SYSTÉMŮ HROMADNÉ OBSLUHY. Michal Dorda. VŠB - TU Ostrava, Fakulta strojní, Institut dopravy

Markov Chain Monte Carlo. Jan Kracík.

Analýza spolehlivosti tlakové nádoby metodou Monte Carlo

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Obsah SLEDOVÁNÍ PRÁCE... 4

1 Analytické metody durace a konvexita aktiva (dluhopisu) $)*

Profilová část maturitní zkoušky 2017/2018

Algoritmizace prostorových úloh

IRAE 07/08 Přednáška č. 7. Začátek (head)

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Diskrétní náhodná veličina

Lineární datové struktury

Transkript:

Úvod do systémů hromadné obsluhy charakteristika SHO: systém, který poskytuje obsluhu určitého typu Z zdroj požadavků fronta kanál obsluhy Příklady reálných SHO: požadavek: kanál obsluhy obsluha auto čerpací stanice tankování letadlo přistávací dráha přistání osoba lékař ošetření telefonní hovor telefonní linka spojení stroj seřizovač seřízení cestující taxi přeprava auto křižovatka průjezd program procesor provedení paket propoj síť spojení terminál počítač přidělení stroj času 1

Úvod do systémů hromadné obsluhy Organizace SHO: z hlediska požadavků - co nejmenší doba strávená v SHO z hlediska provozovatele: jaké využití kanálů, jaká jejich organizace ( specializované či universální), jaký počet kanálů, jak dlouhé fronty, atd Informace potřebné k modelování: 1) informace o příchodech požadavků do SHO: intervaly: pravidelné náhodné ( znalost pravděpodobnost rozložení) příchody požadavků: jednotlivé 2) organizace front SHO s neomezenou frontou SHO s omezenou frontou po skupinách ( rozložení?) frontová disciplina: FIFO, LIFO, výběr dle délky obsluhy, náhodný výběr, výběr dle priorit (slabé a silné priority) chování požadavků: trpělivé: čekají ve frontě potřebnou dobu netrpělivé: rezignují ihned odpadnou po určité době 2

Úvod do systémů hromadné obsluhy 3) informace o procesu obsluhy: doba obsluhy: stejná či náhodná (pravděpodobnostní rozložení) kanály obsluhy : universální, specializované obsluha: jednotlivá (u lékaře), po skupinkách (křižovatka, výtah) dostupnost kanálů: nepřetržitá, s přestávkami (prav, či nikoliv ) Cíle modelů SHO: (uvažujeme jednu frontu, jeden kanál obsluhy) intensita provozu (využití obsluhy) = / = * Ts intensita příchodů (střední počet příchodů za jednotku času) intensita obsluhy (střed počet obsl pož za jednotku času) statistika počtu požadavků v SHO Nw počet požadavků ve frontě Ns počet obsluhovaných požadavků Nq celkový počet požadavků v SHO: Nq = Nw + Ns E(Nw) =?, D(Nw)=?, E(Ns) =?, D(Ns) =?, E(Nq) =?, D(Nq) =? doby strávené požadavkem v SHO: Tw doba strávená požadavkem ve frontě, Ts doba obsluhy požadavku Tq celková doba strávená požadavkem v SHO E(Tw) =?, D(Tw) =?, E(Ts) =?, D(Ts) =?, E(Tq) =?, D(Tq) =? 3

Simulace SHO pro popis SHO požadujeme: representace objektů a popis jejich chování objekty: trvalé (např kanály obsluhy) přechodné (např požadavky SHO) třídy: hromadný popis podobných objektů popis chování: diskrétní události či procesy Přehled synchronizačních principů simulačních systémů a) plánování událostí (event scheduling approach) b) sledování aktivit (activity scanning approach) c) interakce procesů (process interaction approach) Příklad1: SHO s jedním kanálem obsluhy a s jednou frontou Z obecný sled událostí (odvozený od každého požadavku): příchod požadavku začátek obsluhy odchod požadavku ze SHO čekání ve frontě obsluha požadavku 4

Metoda plánování událostí Stručná charakteristika přístupu: plánovat události lze pouze na základě hodnot modelového času neexistuje možnost plánovat události v závislosti na splnění nějaké podmínky popis událostí - formou podprogramů změny atributů modelu - vázány výhradně na provedení zmíněných podprogramů podprogramy událostí - proběhnou bez přerušení uživatel má k disposici speciální příkazy (metody) pro dynamické plánování podprogramů podprogramy jsou plánovány do seznamu událostí dle hodnot modelového času návaznost provádění podprogramů událostí a údržbu modelového času - zajišťuje simulační systém pomocí řídícího programu (také kalendářní program) simulační jazyky orientované na události (také E -jazyky, např SIMSCRIPT ) 5

Metoda plánování událostí algoritmus řídícího programu: dle seznamu událostí určuje aktivní událost řídící program inicializace modelu a plánování prvních událostí je seznam událostí prázdný? ne ano konec nalezni záznam 1 události nastav modelový čas na hodnotu času této události předej řízení podprogramu1 události odstraň záznam 1 události ze seznamu událostí 6

Metoda plánování událostí demonstrační příklad: popis chování požadavku ze SHO každý požadavek -3 události: příchod, začátek obsluhy, odchod obecně lze definovat 3 metody objektu požadavek; můžeme ale sloučit začátek obsluhy s událostí příchod (je-li kanál volný) nebo s událostí odchod předchozího požadavku příchod generuj nový objekt požadavek; vypočti čas příchodu tohoto požadavku popis události příchod požadavku do SHO postupné zavlékání požadavků do SHO naplánuj metodu příchod nového požadavku ovládání seznamu událostí je obsluha v činnosti? ano zařaď aktuální požadavek do fronty ne uveď obsluhu v činnost urči dobu obsluhy naplánuj odchod akt požadavku konec 7

Metoda plánování událostí demonstrační příklad: podprogram události odchod z příkladu 1: odchod je fronta prázdná? ano ne vyjmi další požadavek z fronty uveď obsluhu v nečinnost vypočti dobu obsluhy dalšího požadavku naplánuj odchod dalšího požadavku konec poznámka: pro výpočet náhodných hodnot jako např časy příchodů jednotlivých požadavků, doby obsluhy, atd předpokládáme použití generátorů náhodných čísel 8

Metoda sledování událostí Stručná charakteristika: netypický přístup: chybí plánování, neexistuje seznam událostí, metoda umožňuje aktivovat události na základě modelového času nebo pravdivosti nějaké podmínky, simulační program je rozdělen na části (v CSL nazývané aktivity ), které reprezentují jednotlivé události v systému; tento program je periodicky prováděn: v závislosti na podmínkách provedení jednotlivých událostí se zmíněné části programu buď provedou nebo nikoliv; vazbu jednotlivých událostí na modelový čas lze zajistit pomocí tzv časových proměnných, které svou hodnotou určují dobu, za kterou má být příslušná část programu ( tj událost) provedena, provedení časově závislých částí programu ( např příchod požadavku, ukončení obsluhy) lze podmínit nulovou hodnotou přidružené časové proměnné ( PRICHODtime, OBSLUHAtime); provedení ostatních částí (zahájení obsluhy) lze podmínit vyhodnocením přidružené booleovské podmínky ( prázdná fronta & obsluha v nečinnosti), obsah všech časových proměnných je v průběhu simulace automaticky modifikován tak, že se po provedení všech událostí zmenší o minimum jejich hodnot; tímto způsobem se při simulaci realizuje metoda proměnného časového kroku, po každé z výše zmíněných modifikací nabývá alespoň jedna z časových proměnných nulovou hodnotu a uvolní se podmínka pro provedení přidružené časově závislé části programu, modifikaci časových proměnných lze před následujícím simulačním 9 cyklem potlačit příkazem RECYCLE

Metoda sledování aktivit Příklad: příchod 1 požadavku příchod 2 požadavku příchod 3 požadavku 0 7 10 16 18 time obsluha 1 pož obsluha 2 pož Obsah proměnných: PRICHODtime OBSLUHAtime time počáteční stav: 0 max 0 po příchodu 1 pož: 7 10 0 po syst bloku SB: 0 3 7 po příchodu 2 pož: 11 3 7 po syst bloku SB: 8 0 10 po ukončení obsluhy 1 požadavku 8 max 10 po syst bloku SB vlivem RECYCLE funkce potlačena 8 max 10 po zahájení obsluhy 2 požadavku 8 6 10 po syst bloku SB: 2 0 16 10 ukončení obsluhy, atd

Metoda sledování aktivit počáteční nastavení: PRICHODtime = 0, OBSLUHAtime = max; podmínka příchodu aktivita příchod activity PRICHODtime = 0? ano zařaď požadavek do fronty - urči čas příchodu dalšího požadavku - PRICHODtime := čas příchodu dalšího pož ne podmínka pro zahájení obsluhy aktivita zač obsluhy podmínka pro ukončení obsluhy odchod je fronta prázdná? ne je obsluha v činnosti? ne - urči dobu obsluhy - vyjmi 1 požadavek z fronty - uveď obsluhu v činnost - OBSLUHAtime := doba obsluhy OBSLUHA time = 0? ano ne ano ano - uveď obsluhu v nečinnost - OBSLUHAtime = max - není-li fronta prázdná RECYCLE změň hodnoty časového vektoru systémový blok 11

Metoda interakce procesů demonstrační příklad: popis chování požadavku z příkladu 1 požadavek urči čas příchodu dalšího požadavku generuj a naplánuj nový požadavek fáze 1 čekej pokud je obsluha v činnosti uveď obsluhu v činnost r 1-2 urči dobu obsluhy fáze 2 čekej po dobu obsluhy uveď obsluhu v nečinnost fáze 3 r 2-3 konec procesu diskuse: tři fáze procesu požadavek => dva reaktivační body: r2-3: čekání na dobu známou nepodmíněný synchronizační příkaz (pokračování procesu lze naplánovat) r1-2: čekání na neznámou dobu podmíněný synchronizační příkaz (nelze naplánovat pokračování procesu) - obecná implementace je obtížná (viz následující slide) 12

Metoda interakce procesů Stručná charakteristika: procesově orientovaný model má těsnější vazbu na souvislosti v simulovaném systému: poskytuje přehlednější a čitelnější popis, proces plně popisuje stavové změny určité komponenty, proces je přerušitelný ze dvou důvodů: další události proběhnou v pozdějším čase, další události jsou vázány na splnění nějaké podmínky, lze použít princip plánování jako u plánování událostí, je nutná podpora pro koprogramy, je komplikovanější synchronizace:i implementace: 1) úplné systémové řešení : (seznam plánovaných událostí (SPLU) + seznam podmíněných událostí (SPOU) Algoritmus řídícího programu: 1) Provedou se všechny fáze procesů naplánované pro aktuální hodnotu modelového času ze seznamu SPLU 2) Prohlíží se (aniž by došlo k posunu modelového času) kompletní seznam SPOU a provedou se všechny fáze, které mají splněné podmínky; toto pokračuje, pokud není seznam SPOU prázdný a nebo tam taková fáze není 3) Posune se modelový čas do času nejbližší fáze v seznamu 13 SPLU, pak se postup opakuje dle bodu 1

Metoda interakce procesů b) řešení založené na spolupráci s uživatelem - b1) využití semaforů demonstrace přístupu ( použita syntax jazyka GPSS: General Purpose Simulation Systém) GENERATE < parametry> ( ) SEIZE <identifikace kanálu obsluhy> ( ) ADVANCE <časový interval> ( ) RELEASE <identifikace kanálu obsluhy> ( ) TERMINATE <parametry> ( ) Poznámky: seznam SPOU (viz systémové řešení) je rozdělen na řadu dílčích seznamů typu FRONTA (každý z nich sdružuje procesy čekající na stejnou podmínku) uživatel explicitně upozorní na splnění podmínky, která může způsobit pozdržení některého procesu funkce SEIZE vyjmutí ze SU a zařazení do FRONTA funkce RELEASEvyjmutí z FRONTA a naplánování do SU b2) využití explicitní pasivace procesů v případě nesplnění podmínek pro jejich pokračování (př systém SIMULA 67) 14

Metoda interakce procesů pasivace procesů demonstrace přístupu: aplikace na příklad 1: a) 2 třídy procesů: proces požadavek, proces obsluha pozadavek obsluha urči čas příchodu dal požadavku naplánuj další příchod ano fronta prázdná? zařaď tento požadavek do fronty naplánuj proces obsluhy pasivuj tento požadavek ne a zařaď tento požadavek fronty b b a urči dobu obsluhy čekej po dobu obsluhy ne vyjmi 1 požadavek z fronty naplánuj právě vyjmutý požadavek fronta prázdná? ano pasivuj proces obsluhy c konec 15

Metoda interakce procesů demonstrace synchronizace s modelovým časem: viz procesy požadavek a obsluha příchod odchod obsluha 1 požadavek t1 čekání t3 obsluha 2 požadavek t2 t4 příchod modelový čas t4 t3 t2 t1 a /1 a a /2 odchod c b / 2 1 požadavek b b /1 obsluha 2 požadavek strojový čas poznámka: pro získání statistik - doplnit proces požadavek: a) kdekoliv ve fázi a: cas_prichodu := time; b) kdekoliv ve fázi b: doba := time - cas_prichodu příkaz pro korekci histogramu hodnotou doba ; 16

Pasivace procesů demonstrační příklad : použití jediné třídy procesů: požadavek urči čas příchodu dalšího požadavku naplánuj další příchod je obsluha v činnosti? uveď obsluhu v činnost ne ano zařaď tento požadavek do fronty pasivuj tento požadavek SEIZE urči dobu obsluhy čekej po dobu obsluhy ne vyjmi 1 požadavek z fronty naplánuj 1 pož ve frontě je fronta prázdná? ano uveď obsluhu v nečinnost RELEASE konec 17

Histogram tabulka četností hodnot (sledované veličiny), v určitých intervalech L1 L2 L3 L4 k1 k2 k3 k4 k1počet hodnot z inter (0, L1 > k2počet hodnot z inter ( L1, L2 > Ln kn kn+1 knpočet hod z inter (Ln-1,Ln+1 kn+1počet hodnot z inter (Ln, ) ki doba 0 L1 L2 Ln 18

Simulační systémy diskrétního typu: obecná charakteristika: kromě běžných konstrukcí universálních programovacích jazyků nabízí další prostředky pro podporu následujících činností: generování pseudonáhodných čísel pro často používaná rozložení, generování, případně rušení přechodných objektů (případně garbage collector), ovládání seznamu událostí (synchronizační příkazy), případný popis struktury SHO, provádění často používaných operací nad seznamy objektů, statistická vyhodnocení sledovaných veličin (výpočet histogramů, středních hodnot, standardních odchylek apod) 19

Simula 67 stručná charakteristika: Simula I: 1965 - simulační jazyk diskrétního typu Simula 67: (1967) objektově orientovaný universální programovací jazyk pro vytváření speciálních nástrojů pro různé účely dostupné konfigurace: základní jazyk Simula 67 (ZJ) - universální program jazyk systémová třída SIMSET - podpora pro zpracování seznamů, systémová třída SIMULATION - podpora pro simulaci Základní jazyk Simula 67: blokově orient jazyk, mohutná nadstavba Algolu 60 hlavní vlastnosti navíc: třídy - prototypy dat a činností objekty - dynamic representace tříd stručná charakteristika: možné hierarchie tříd, dědičnost atributů z nadřazených tříd virtuální procedury chráněné atributy vyjma metod třídy disponují i tzv operační částí třídy: rozštěpená operační část - možnost vkládání operačních částí odvozených pod tříd do operační části nadřazené třídy charakter koprogramu (možnost osamostatnění objektu s vlastním zásobníkem) 20

Simula 67 možné stavy objektů v Simule: samostatný (vlastní zásobník): blok s prefixem (hlavní program), operační část třídy (po osamostatnění příkazem detach) vnořený (zásobník vnořený do zásobníku rodičovského objektu): podblok, procedura, funkce, operační část třídy (po vygenerování ) ukončený: operační část třídy po provedení všech příkazů příklad: gener a osamost objektů O1, resp O2 (obj třídy B, resp C) Hlav program begin 1 O1= new B; 3 resume (O1); O2:= new C; 5 znázornění stavů: end; 1 H s Oper část O1 begin 2 detach; detach; detach; H O1 end; 2 3 s v H O1 s s Oper část O2 begin 4 resume (O1); end; 4 H O2 s v 5 O2 O1 H u s s O1 s 21

Simula 67 kvaziparalelní systém v Simule 67: pro vytváření procesů obsahuje pouze objekty ve stavu samostatný (blok s prefixem + samostatné objekty tříd ) jednoúrovňový nebo viceúrovňový (komponentou jednoúrovňového kvaziparalelního systému je opět blok s prefixem, který se stal hlavní komponentou nižší úrovně) jediná z komponent může být v daném okamžiku aktivní, ostatní mají vytvořen reaktivační bod situace v jednoúrovňovém kvaziparalelním systému v ustáleném stavu (tj po osamostatnění všech komponent) HL resume (x1) resume (x2) x1 x2 x3 xn resume(x1) přínos systémových tříd: detach a) třída SIMSET - definuje základní operace nad seznamy objektů (pro operace nad frontami a pod) b) třída SIMULATION - definuje prostředky pro kvaziparalelní prostředí procesů: modelový čas + seznam událostí resume (xn) operace synchronizačního jádra (uvažují modelový čas a seznam událostí; předávání řízení ) 22

Simula 67: demonstrační příklad Příklad: SHO: jeden kanál obsluhy + jedna fronta Simulation begin; (hlavní program: blok s prefixem) ; deklarace globálních proměnných: pro generátory pseudonáhodných čísel, atd ref ( head ) fronta; ptr kvalifikovaný pro objekty třídy head ; (representace hlavy seznamu) ref (obsluha) obs ; ptr kvalifikovaný pro objekty třídy obsluha ; (representace kanály obsluhy) ; následuje deklarace třídy požadavek (jde o podtříddu třídy process) process class pozadavek; begin real cas_prichodu; paměť příchodu požadavku do SHO activate new pozadavek delay negexp (40, u1); // =4 if fronta empty then begin passivate; current into (fronta); activate obs at time; end else currentinto (fronta); histo ( ); korekce histogramu před odchodem ze SHO end pozadavek; konec procesu pozadavek 23

Simula 67 : demonstrační příklad pokračování minulého příkladu-následuje popis procesu obsluha process class obsluha; begin zac: hold ( negexp (50, u2)); //exp rozložení doby obsluhy =5 activate fronta first at time; frontafirstout; if frontaempty then passivate; go to zac end obsluha; ;následují výkonné operace hlavního programu fronta:= new head; generuje prázdný seznam FRONTA ; určení semen pro generátory pseudonáhodných čísel ; nastavení mezí pro intervaly histogramu obs:= new obsluha; generuje jeden objekt třídy obsluha activate new pozadavek at time; generuje 1 objekt třídy požadavek ;a plánuje jeho oper část do SU pro okamžitou hodnotu model času hold (100 000); pozdrží hlav program na dobu trvání simulace ; tisk histogramu end; konec hlavního programu 24