🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Darrell Long Wed, 07 Oct 1992 18:31
mars.ps (MARS project description)
#7
Author: Darrell Long
Date: Wed, 07 Oct 1992 18:31
434 lines
29381 bytes
%!PS-Adobe-2.0
%%Creator: dvips 5.479 Copyright 1986-92 Radical Eye Software
%%Title: mars.dvi
%%Pages: 3 1
%%BoundingBox: 0 0 612 792
%%DocumentFonts: Times-Roman Times-Bold Times-Italic Helvetica
%%EndComments
%DVIPSCommandLine: dvips -o mars.ps mars
%%BeginProcSet: tex.pro
/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N /X{S N}
B /TR{translate}N /isls false N /vsize 11 72 mul N /@rigin{isls{[0 -1 1 0 0 0]
concat}if 72 Resolution div 72 VResolution div neg scale isls{Resolution hsize
-72 div mul 0 TR}if Resolution VResolution vsize -72 div 1 add mul TR matrix
currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put
setmatrix}N /@landscape{/isls true N}B /@manualfeed{statusdict /manualfeed
true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N
/IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin /FontType 3 N /FontMatrix
fntrx N /FontBBox FBB N string /base X array /BitMaps X /BuildChar{
CharBuilder}N /Encoding IE N end dup{/foo setfont}2 array copy cvx N load 0 nn
put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0
0 sf neg 0 0]N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data
dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128
ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127
sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type
/stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N
/cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get
S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height
sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0
-1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image}imagemask restore}B /D{/cc X dup
type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1
ne{dup dup length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}
B /I{cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
0 0 moveto}N /eop{SI restore showpage userdict /eop-hook known{eop-hook}if}N
/@start{userdict /start-hook known{start-hook}if /VResolution X /Resolution X
1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn
put}for 65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1
0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval
(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale
rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex
ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{moveto}B
/delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}
B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B
/k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{p 1
w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p a}B /bos{
/SS save N}B /eos{SS restore}B end
%%EndProcSet
%%BeginProcSet: texps.pro
TeXDict begin /rf{655360 div mul 7227 div Resolution mul /PixPerEm X findfont
dup length 1 add dict /nn X{1 index /FID ne{nn 3 1 roll put}{pop pop}ifelse}
forall nn /Encoding get 1 0 1 255{2 index exch get /.notdef ne{1 add}if}for
dict begin 0 1 255{255 exch sub 2 copy get 3 index 2 index get 1000 mul
PixPerEm div def pop}for pop pop nn /Metrics currentdict put end{/foo setfont}
2 array copy cvx dup 0 nn dup definefont[PixPerEm 0 0 PixPerEm VResolution mul
Resolution div neg 0 0]makefont dup /nn X put N}N /ObliqueSlant{dup sin S cos
div neg}B /SlantFont{/foo X[1 0 foo 1 0 0]TransFont}N /ExtendFont{/foo X 3 2
roll[S{foo div}forall]3 1 roll[foo 0 0 1 0 0]TransFont}N /TransFont{S findfont
S makefont dup length dict /nn X{1 index /FID ne{nn 3 1 roll put}{pop pop}
ifelse}forall dup nn definefont pop}N end
%%EndProcSet
TeXDict begin 40258437 52099154 1000 300 300 @start /Fa [ 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 12 12 15 23 23 37 28 9 14 14 16 24 12 14 12 12 23 23 23 23
23 23 23 23 23 23 12 12 24 24 24 23 42 28 28 30 30 28 25 32
30 12 21 28 23 35 30 32 28 32 30 28 25 30 28 39 28 28 25 12
12 12 19 23 9 23 23 21 23 23 12 23 23 9 9 21 9 35 23 23 23
23 14 21 12 23 21 30 21 21 21 14 11 14 24 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 23 23
7 23 23 23 23 8 14 23 14 14 21 21 0 23 23 23 12 0 22 15 9 14
14 23 42 42 0 25 0 14 14 14 14 14 14 14 14 0 14 14 0 14 14
14 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 0 15 0 0 0 0 23 32
42 15 0 0 0 0 0 37 0 0 0 12 0 0 9 25 39 25 0 0 0 0 ] /Helvetica
1000 655360 rf /Fb [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 10 14 23 21 21 42 35 14 14 14 21
24 10 14 10 12 21 21 21 21 21 21 21 21 21 21 14 14 24 24 24
21 39 30 28 30 30 28 25 32 32 16 21 32 28 39 30 32 25 32 30
23 28 30 30 42 30 30 28 14 12 14 24 21 14 21 23 18 23 18 14
21 23 12 14 23 12 35 23 21 23 23 18 16 14 23 21 30 21 21 18
16 9 16 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 14 21 21 7 21 21 21 21 12 21 21 14 14 23
23 0 21 21 21 10 0 22 15 14 21 21 21 42 42 0 21 0 14 14 14
14 14 14 14 14 0 14 14 0 14 14 14 42 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 42 0 12 0 0 0 0 28 32 42 14 0 0 0 0 0 30 0 0 0 12
0 0 12 21 30 23 0 0 0 0 ] /Times-Bold 1000 655360 rf /Fc [
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 10 14 17 21 21 35 32 14 14 14 21 28 10 14 10 12 21 21 21
21 21 21 21 21 21 21 14 14 28 28 28 21 38 25 25 28 30 25 25
30 30 14 18 28 23 35 28 30 25 30 25 21 23 30 25 35 25 23 23
16 12 16 18 21 14 21 21 18 21 18 12 21 21 12 12 18 12 30 21
21 21 21 16 16 12 21 18 28 18 18 16 17 11 17 22 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16
21 21 7 21 21 21 21 9 23 21 14 14 21 21 0 21 21 21 10 0 22
15 14 23 23 21 37 42 0 21 0 14 14 14 14 14 14 14 14 0 14 14
0 14 14 14 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 0 11 0 0 0
0 23 30 39 13 0 0 0 0 0 28 0 0 0 12 0 0 12 21 28 21 0 0 0 0
] /Times-Italic 1000 655360 rf /Fd [ 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 17 28 25 25 50
41 17 17 17 25 28 12 17 12 14 25 25 25 25 25 25 25 25 25 25
17 17 28 28 28 25 46 36 33 36 36 33 30 39 39 19 25 39 33 47
36 39 30 39 36 28 33 36 36 50 36 36 33 17 14 17 29 25 17 25
28 22 28 22 17 25 28 14 17 28 14 41 28 25 28 28 22 19 17 28
25 36 25 25 22 20 11 20 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17 25 25 8 25 25 25 25
14 25 25 17 17 28 28 0 25 25 25 12 0 27 17 17 25 25 25 50 50
0 25 0 17 17 17 17 17 17 17 17 0 17 17 0 17 17 17 50 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 15 0 0 0 0 33 39 50 16 0 0 0
0 0 36 0 0 0 14 0 0 14 25 36 28 0 0 0 0 ] /Times-Bold 1000
786432 rf /Fe [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 10 14 17 21 21 35 32 14 14 14 21 23 10
14 10 12 21 21 21 21 21 21 21 21 21 21 12 12 23 23 23 18 38
30 28 28 30 25 23 30 30 14 16 30 25 37 30 30 23 30 28 23 25
30 30 39 30 30 25 14 12 14 19 21 14 18 21 18 21 18 14 21 21
12 12 21 12 32 21 21 21 21 14 16 12 21 21 30 21 21 18 20 8
20 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 14 21 21 7 21 21 21 21 7 18 21 14 14 23 23 0
21 21 21 10 0 19 15 14 18 18 21 42 42 0 18 0 14 14 14 14 14
14 14 14 0 14 14 0 14 14 14 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 37 0 11 0 0 0 0 25 30 37 13 0 0 0 0 0 28 0 0 0 12 0 0 12
21 30 21 0 0 0 0 ] /Times-Roman 1000 655360 rf /Ff [ 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15
19 32 29 29 58 48 19 19 19 29 33 15 19 15 16 29 29 29 29 29
29 29 29 29 29 19 19 33 33 33 29 54 42 39 42 42 39 36 45 45
23 29 45 39 55 42 45 36 45 42 32 39 42 42 58 42 42 39 19 16
19 34 29 19 29 32 26 32 26 19 29 32 16 19 32 16 48 32 29 32
32 26 23 19 32 29 42 29 29 26 23 13 23 30 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 19 29 29
10 29 29 29 29 16 29 29 19 19 32 32 0 29 29 29 15 0 31 20 19
29 29 29 58 58 0 29 0 19 19 19 19 19 19 19 19 0 19 19 0 19
19 19 58 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 58 0 17 0 0 0 0 39
45 58 19 0 0 0 0 0 42 0 0 0 16 0 0 16 29 42 32 0 0 0 0 ] /Times-Bold
1000 917504 rf /Fg [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 12 17 20 25 25 41 39 17 17 17 25
28 12 17 12 14 25 25 25 25 25 25 25 25 25 25 14 14 28 28 28
22 46 36 33 33 36 30 28 36 36 17 19 36 30 44 36 36 28 36 33
28 30 36 36 47 36 36 30 17 14 17 23 25 17 22 25 22 25 22 17
25 25 14 14 25 14 39 25 25 25 25 17 19 14 25 25 36 25 25 22
24 10 24 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 17 25 25 8 25 25 25 25 9 22 25 17 17 28
28 0 25 25 25 12 0 23 17 17 22 22 25 50 50 0 22 0 17 17 17
17 17 17 17 17 0 17 17 0 17 17 17 50 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 44 0 14 0 0 0 0 30 36 44 15 0 0 0 0 0 33 0 0 0 14
0 0 14 25 36 25 0 0 0 0 ] /Times-Roman 1000 786432 rf /Fh [
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 18 23 29 35 35 59 55 23 23 23 35 40 18 23 18 20 35 35 35
35 35 35 35 35 35 35 20 20 40 40 40 31 65 51 47 47 51 43 39
51 51 23 27 51 43 63 51 51 39 51 47 39 43 51 51 67 51 51 43
23 20 23 33 35 23 31 35 31 35 31 23 35 35 20 20 35 20 55 35
35 35 35 23 27 20 35 35 51 35 35 31 34 14 34 38 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23
35 35 12 35 35 35 35 13 31 35 23 23 39 39 0 35 35 35 18 0 32
25 23 31 31 35 71 71 0 31 0 23 23 23 23 23 23 23 23 0 23 23
0 23 23 23 71 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 19 0 0 0
0 43 51 63 22 0 0 0 0 0 47 0 0 0 20 0 0 20 35 51 35 0 0 0 0
] /Times-Roman 1000 1114112 rf end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300
TeXDict begin

%%EndSetup
%%Page: 1 1
bop 534 286 a Fh(The)18 b(Distributed,)g(Fault-T)-5 b(olerant)454
378 y(Real-T)n(ime)18 b(Operating)h(System)f(MARS)509 498 y
Fg(H.)13 b(Kopetz,)g(G.)g(Fohler)n(,)f(G.)g(Gr)1070 499 y(\310)1066
498 y(unsteidl,)h(H.)g(Kantz,)403 556 y(G.)g(Pospischil,)g(P)-6
b(.)13 b(Puschner)n(,)g(J.)g(Reisinger)n(,)g(R.)g(Schlatterbeck,)576
614 y(W)-5 b(.)14 b(Sch)723 615 y(\310)719 614 y(utz,)e(A.)h(V)m(rchoticky)m
(,)f(R.)h(Zainlinger)629 731 y(Department)f(of)g(Real-T)n(ime)h(Systems)578
789 y(T)m(echnical)f(University)g(of)g(V)m(ienna,)h(Austria)0
951 y Ff(Personnel)h(and)h(Contact)0 1047 y Fe(Prof.)g(H.)c(Kopetz)0
1096 y(Inst.)k(f.)g(T)m(echnische)c(Informatik)0 1146 y(T)m(echnical)g
(University)e(of)h(V)n(ienna)0 1196 y(T)o(reitlstr)n(.)j(3/182/1)0
1246 y(A-1040)c(V)n(ienna,)h(Austria)0 1311 y(+43)g(\(222\))g(58)f(801-8180)0
1360 y(hk@vmars.tuwien.ac.at)0 1483 y Ff(Pr)o(oject)14 b(Summary)0
1578 y Fe(A)d(system)g(architecture)f(has)h(to)f(provide)g(support)f(for)h
(all)h(those)0 1627 y(functions)k(which)g(are)i(expected)g(to)e(occur)h(in)g
(most)g(applica-)0 1677 y(tions)9 b(of)h(the)g(intended)f(application)f
(domain.)15 b(MARS)10 b(\261)g(which)0 1727 y(has)18 b(been)h(developed)f(at)
g(our)f(institute)f(during)h(the)h(last)g(ten)0 1777 y(years)11
b([1)o(,)f(2])g(\261)g(is)f(an)h(architecture)g(for)g(the)f(realization)g(of)
h(com-)0 1827 y(puter)d(systems)i(for)e(distributed)f(fault-tolerant)g
(real-time)h(appli-)0 1877 y(cations.)14 b(In)6 b(this)g(application)g
(domain)h(the)f(following)f(functions)0 1926 y(have)10 b(to)f(be)h(provided)e
(within)g(the)i(framework)f(of)h(the)f(architec-)0 1976 y(ture:)14
b(clock)9 b(synchronization,)f(interprocess)i(communication,)0
2026 y(task)f(management,)h(scheduling,)e(error)h(handling,)f(redundancy)0
2076 y(management,)k(and)e(testing)f(support.)42 2127 y(If)22
b(the)h(architecture)g(is)g(successful)g(in)f(providing)f(these)0
2177 y(services,)29 b(the)23 b(application)g(developer)g(can)i(focus)f(on)g
(the)0 2227 y(application-speci\256c)9 b(tasks.)0 2353 y Fd(The)j(MARS)h(Ar)o
(chitectur)o(e)0 2433 y Fe(A)f(MARS)g(computer)f(system)i(consists)e(of)h
(one)g(or)f(more)i(clus-)0 2483 y(ters.)37 b(A)17 b(cluster)g(consists)g(of)g
(a)h(set)g(of)f Fc(fault-tol)o(erant)e(units)0 2532 y Fe(\(FTUs\))c([3)o(])g
(which)f(are)h(interconnected)f(by)g(a)i(redundant)d(real-)0
2582 y(time)h(bus.)k(An)c(FTU)g(is)g(composed)g(of)f(two)g(actively)g
(redundant)0 2632 y(fail-silent)e(components)g(and)f(an)h(opt)o(ion)o(al)g
Fc(shad)o(ow)f(component)o Fe(.)996 951 y(These)11 b(components)e(are)i
(hardware/software)f(units)f(which)g(de-)996 1001 y(liver)j(a)h(speci\256ed)g
(service.)24 b(As)13 b(long)e(as)j(any)f(one)g(component)996
1051 y(within)7 b(an)i(FTU)h(is)f(operational,)f(the)h(FTU)h(can)f(provide)f
(its)h(ser)o(-)996 1101 y(vice.)24 b(Some)13 b(components,)h(the)f
Fc(interface)g(components)p Fe(,)h(sup-)996 1151 y(port)f(a)i(connection)f
(to)g(the)g(intelligent)e(instrumentation,)i(i.e.,)996 1200
y(the)c(sensors)g(and)h(actuators)f(in)f(the)i(controlled)d(object.)15
b(The)c(in-)996 1250 y(telligent)f(instrumentation)f(delivers)j(or)f(accepts)
i(observations)996 1300 y(about)d(the)h(environment.)16 b(The)c
(\(syntactic\))e(transformation)f(of)996 1350 y(the)14 b(measured)h(physical)
e(signal)g(to)h(an)g(observation)f(and)h(vice)996 1400 y(versa)d(is)f
(performed)g(in)g(the)g(intelligent)e(instrumentation.)996
1514 y Fb(Clock)i(Synchr)o(onization)996 1593 y Fe(All)e(components)h(of)g(a)
g(MARS)g(system)h(have)f(access)i(to)e(a)g(glob-)996 1642 y(ally)18
b(synchronized)g(fault-tolerant)f(time)h(base.)42 b(The)19
b(preci-)996 1692 y(sion)c(of)g(synchronization)f(is)i(better)g(than)f(10)g
(microseconds.)996 1742 y(This)d(clock)h(synchronization)e(is)h(supported)f
(by)h(a)h(custom)g(de-)996 1792 y(signed)8 b(VLSI)h(circuit,)f(the)h
Fc(clock)g(synchr)n(onization)f(unit)g Fe(\(CSU\))996 1842
y([4)o(].)15 b(The)c(information)d(which)h(is)g(required)h(to)f(synchronize)g
(the)996 1891 y(clocks)g(is)f(piggy-backed)g(on)h(application)e(messages,)12
b(such)d(that)996 1941 y(no)h(special)g(clock)h(synchronization)d(messages)k
(are)f(required.)996 2055 y Fb(Interpr)o(ocess)i(Communication)996
2134 y Fe(MARS)k(components)f(communicate)i(via)f(the)g(real-time)g(bus)996
2184 y(by)12 b(the)f(exchange)i(of)f Fc(state-messages)p Fe(.)21
b(A)12 b(state)h(message)h(is)e(a)996 2234 y(unidirectional)g(broadcast)i
(message,)j(which)d(is)g(sent)g(periodi-)996 2283 y(cally)m(,)i(at)e
(prede\256ned)h(points)e(of)h(time.)28 b(It)14 b(has)h(the)f(semantics)996
2333 y(of)g(a)i(variable)e(at)h(the)g(receiver)r(')n(s)g(side,)h(i.e.,)h(a)e
(state-message)996 2383 y(is)d(not)g(consumed)h(on)f(reading)h(and)f(a)i(new)
e(version)g(of)h(a)g(state)996 2433 y(message)e(overwrites)f(the)g(previous)f
(message.)17 b(The)10 b(semantics)996 2483 y(of)15 b(a)h(state-message)i(is)d
(thus)g(ideally)g(suited)g(to)g(transport)g(an)996 2532 y(observation)7
b(of)h(the)h(environment,)f(consisting)f(of)h(both)g(a)h(value)996
2582 y(\(values\))16 b(and)g(the)g(point)f(in)h(time)g(of)g(the)g
(observation.)32 b(The)996 2632 y(minimal)13 b(protocol)g(stack)h(of)g(MARS)f
(ensures)i(that)e(the)h(delay)p eop
%%Page: 2 2
bop 0 154 a Fe(and)10 b(the)h(temporal)f(variability)e(of)i(message)i
(transmissions)e(are)0 203 y(small)k(and)h(bounded.)26 b(Access)16
b(to)d(the)h(real-time)g(bus)g(is)g(con-)0 253 y(trolled)8
b(by)i(a)g(synchronous)f(time)h(division)e(protocol)g(\(TDMA\).)0
303 y(A)15 b(sparse)h(time)e(base)i(within)d(MARS)i([5)o(])g(is)g(realized)g
(by)g(the)0 353 y(synchronization)g(of)h(the)g(TDMA)g(protocol)f(with)g(the)h
(global)0 403 y(time.)f(Thus)9 b(messages)h(can)g(only)e(be)h(sent)g(at)g
(prede\256ned)g(points)0 452 y(in)h(time.)18 b(In)10 b(order)h(to)f(tolerate)
h(3)g(omission)f(faults)g(on)g(the)h(real-)0 502 y(time)f(bus)g(every)h
(message)h(is)e(transmitted)f(4)h(times.)0 630 y Fb(T)l(ask)g(Management)0
714 y Fe(T)m(o)k(make)h(a)f(predictable)g(timing)e(behavior)h(possible,)h
(bounds)0 764 y(for)d(the)g(execution)g(times)g(of)h(all)f(tasks)g(must)g(be)
h(known)e(in)h(ad-)0 814 y(vance.)18 b(These)12 b(bounds)e(are)i(derived)e
(by)h(static)f(analysis)h(of)g(the)0 864 y(tasks')e(code)h([6].)k(This)c(is)f
(possible,)g(because)h(the)f(performance)0 913 y(of)i(the)h(underlying)e
(hardware)i(is)g(known,)f(the)h(time)g(consump-)0 963 y(tion)h(of)g(all)h
(operating)f(system)h(functions)f(is)h(bounded,)g Fc(worst)0
1013 y(case)c(execution)f(times)f Fe(can)i(be)f(computed)g(for)f(all)g
(constructs)h(of)0 1063 y(the)h(used)g(programming)e(language,)j(and)f(no)f
(delays)h(caused)h(by)0 1113 y(communication)c(and)g(synchronization)f(can)j
(occur)e(during)f(task)0 1162 y(execution.)14 b(The)8 b(latter)f(is)g(due)h
(to)f(the)g(fact)h(that)f(the)h(execution)f(of)0 1212 y(communication)i
(protocols)f(does)i(not)f(take)h(place)g(in)f(the)h(scope)0
1262 y(of)h(the)g(tasks.)17 b(Instead,)12 b(tasks)f(merely)g(read)h(from)e
(and)i(write)e(to)0 1312 y(message)h(buf)o(fers.)j(The)c(physical)e
(send-message)j(and)e(receive-)0 1362 y(message)g(operations)e(are)h
(performed)f(by)g(the)h(operating)e(system)0 1411 y(at)k(times)h
(predetermined)f(by)g(the)g(of)o(f-line)f(scheduler)n(.)0 1539
y Fb(Scheduling)0 1623 y Fe(MARS)27 b(is)f(based)i(on)e Fc(time-trigger)n(ed)
g(static)g(pr)n(eemptive)0 1673 y(scheduling)p Fe(.)14 b(Since)c(both)e(the)h
(communication)g(times)h(and)f(task)0 1723 y(execution)15 b(times)g(are)i
(bounded)d(it)h(is)g(possible)f(to)h(determine)0 1773 y(the)e(CPU)g(slots)f
(for)h(the)g(tasks)g(and)g(the)g(message)i(slots)d(on)h(the)0
1823 y(real-time)7 b(bus)h(during)d(the)j(design)f(phase)h(of)f(an)g
(application)f([7].)0 1872 y(At)11 b(run)f(time)h(a)h(dispatcher)f(executes)h
(the)f(static)f(schedules.)19 b(In)0 1922 y(order)12 b(to)g(adapt)h(the)f
(system)h(to)f(dif)o(ferent)f(application)g(modes,)0 1972 y(a)k
Fc(schedule)g(switch)f Fe(is)h(supported)e(by)h(the)h(operating)f(system.)0
2022 y(A)d(correct)h(static)f(schedule)h(is)f(provided)f(for)h(each)i
(application)0 2072 y(mode.)29 b(Replica)15 b(determinism)g(between)g
(replicated)f(compo-)0 2121 y(nents)i(within)f(an)i(FTU)g(can)g(be)g
(maintained)f(easily)h(because)0 2171 y(there)10 b(are)h(no)f(dynamic)h
(scheduling)e(decisions)h(at)g(all.)0 2299 y Fb(Err)o(or)h(Handling)0
2383 y Fe(The)d(error)f(handling)e(philosophy)g(of)i(MARS)g(is)g(simple.)14
b(When-)0 2433 y(ever)e(an)f(error)g(is)f(detected)i(within)d(a)i(component,)
h(the)e(compo-)0 2483 y(nent)15 b(is)h(turned)f(of)o(f.)31
b(Since)17 b(an)f(FTU)g(contains)f(at)h(least)g(two)0 2532
y(redundant)d(components,)i(the)e(speci\256ed)h(service)h(of)e(the)h(FTU)0
2582 y(is)h(not)e(interrupted)g(when)i(one)g(component)f(of)h(an)g(FTU)g
(fails)0 2632 y(in)c(a)i(fail-silent)d(manner)n(.)21 b(Architectural)11
b(support)g(is)h(provided)996 154 y(to)17 b(reintegrate)g(a)h(failed)g
(component)f(quickly)g(after)g(the)h(oc-)996 203 y(currence)d(of)f(a)i
(transient)d(fault.)27 b(There)16 b(is)e(also)h(architectural)996
253 y(support)9 b(provided)h(to)g(realize)h(a)h(high)e(self)g(checking)h
(coverage)996 303 y(of)k(the)h(components.)32 b(Because)17
b(of)f(the)f(a-priori)g(knowledge)996 353 y(of)c(the)g(sending)f(time)h(of)g
(messages)i(any)e(message)i(loss)e(can)h(be)996 403 y(detected)e(by)g(the)g
(receiver)n(.)996 516 y Fb(Redundancy)h(Management)996 594
y Fe(In)h(order)g(to)f(gain)h(a)h(consistent)e(and)h(timely)g(view)g(of)g
(the)g(state)996 644 y(of)i(each)i(FTU)f(within)e(a)j(cluster)n(,)g(a)f
Fc(distributed)e(membership)996 694 y Fe(service)f(is)g(part)g(of)f(the)h
(architecture.)21 b(This)11 b(distributed)f(mem-)996 744 y(bership)17
b(service)h(is)f(needed)i(to)e(implement)g(the)h(fail-silence)996
794 y(property)13 b(of)i(the)g(components)f(\(malfunction)f(of)i(an)g(input)e
(or)996 843 y(output)g(channel\))j(and)f(to)g(control)f(the)h(redundancy)g
(manage-)996 893 y(ment)10 b(within)f(an)h(FTU)h([8].)996 1006
y Fb(T)l(esting)f(Support)996 1085 y Fe(In)f(any)g(application)f
(environment,)h(the)g(actual)h(message)h(traf)o(\256c)996 1135
y(on)i(the)h(MARS)f(bus)g(can)i(be)f(monitored)e(from)i(a)g(test)f(support)
996 1185 y(system)c(without)e(causing)i(the)g(probe)f(ef)o(fect)i([9)o(].)15
b(Since)9 b(MARS)996 1234 y(is)f(based)h(on)g(a)g(sparse)g(time)g(model,)g
(the)g(message)h(environment)996 1284 y(of)e(any)h(component)f(of)g(a)h
(cluster)f(can)i(be)e(recreated,)j(both)c(in)h(the)996 1334
y(domains)i(of)g(value)g(and)g(time,)h(by)f(this)f(test)h(support)f(system.)
996 1455 y Fd(The)j(MARS)g(Design)h(Envir)o(onment)996 1534
y Fe(In)8 b(our)g(view)m(,)h(an)g(architecture)f(for)g(hard)g(real-time)g
(applications)996 1584 y(must)i(be)h(complemented)g(by)f(an)g(appropriate)g
(design)g(method-)996 1634 y(ology)m(.)30 b(W)m(e)17 b(have)f(developed)f
(such)h(a)h(design)e(methodology)996 1684 y([10)o(])f(which)g(is)f
(speci\256cally)i(suited)e(to)g(construct)h(predictable)996
1733 y(hard)c(real-time)g(applications)f(for)h(the)g(MARS)g(architecture.)
1037 1784 y(The)18 b(design)f(methodology)f(consists)g(of)h(several)h
(distinct,)996 1834 y(but)13 b(co-operating,)i(design)f(steps.)27
b(Design)14 b(steps)h(deal)f(either)996 1883 y(with)d Fc(design)h(cr)n
(eation)p Fe(,)h(where)g(the)f(design)g(information)e(from)996
1933 y(a)g(previous)e(design)h(phase)h(is)f(re\256ned)h(and)f(more)h(design)f
(details)996 1983 y(are)f(added,)h(with)d Fc(static)h(design)g
(veri\256cation)p Fe(,)g(where)h(the)g(design)996 2033 y(information)f
(resulting)h(from)h(some)h(design)f(phase)h(is)f(analyzed)996
2083 y(or)e(evaluated,)i(or)e(with)g Fc(dynamic)g(design)g(veri\256cation)g
Fe(\(testing\).)1037 2133 y(Three)13 b(types)e(of)g(static)g(veri\256cation)f
(have)i(been)g(considered)996 2183 y(so)f(far:)k(Dependability)9
b(Analysis)i([11)o(,)g(12],)g(T)o(iming)f(Analysis)996 2233
y([7)o(],)h(and)f(Execution)g(T)o(ime)g(Analysis)g([6].)1037
2283 y(For)30 b(dynamic)g(veri\256cation)f(\(testing\))f(a)i(suitable)f(test)
996 2333 y(methodology)8 b(which)i(is)g(integrated)g(with)f(the)h(design)g
(creation)996 2382 y(steps)g(has)h(been)g(developed)f([13)o(].)1037
2433 y(Based)f(on)e(this)g(design)h(methodology)m(,)f(the)h(prototype)e
(design)996 2483 y(environment)17 b(MARDS)h([10)o(])g(has)h(been)f
(developed,)j(which)996 2532 y(provides)12 b(automated)g(support)g(for)g(the)
g(development)h(of)f(real-)996 2582 y(time)d(applications)f(and)i(integrates)
f(a)h(number)f(of)h(design,)f(eval-)996 2632 y(uation,)g(and)i(project)e
(management)j(tools.)p eop
%%Page: 3 3
bop 0 154 a Ff(Status)0 252 y Fe(W)m(e)14 b(have)g(recently)f(implemented)g
(an)h(experimental)g(applica-)0 302 y(tion,)j(the)f(\252Rolling)e(Ball\272)i
(on)g(a)h(MARS)f(cluster)g([14)o(].)34 b(The)0 352 y(aim)12
b(of)g(this)f(application)f(is)i(to)f(balance)h(a)h(ball)e(on)g(\257at)h
(surface)0 401 y(such)k(that)f(it)g(follows)f(a)i(prede\256ned)g(course.)32
b(Based)17 b(on)e(our)0 451 y(experiences)g(with)e(the)h(present)g(hardware,)
i(we)f(are)f(currently)0 501 y(designing)9 b(a)i(new)f(processor)h(board)f
([15)o(].)0 657 y Ff(Report)15 b(A)l(vailability)0 756 y Fe(Many)i(of)h(the)f
(recent)h(papers)g(and)f(technical)h(reports)e(\(1989)0 806
y(and)c(later\))f(are)i(available)e(from)h Fa(ftp.vmars.tuwien.ac.)o(at)d
Fe(via)0 855 y(anonymous)h(FTP)i(in)e(the)g(directory)g Fa(/pub/papers)p
Fe(.)16 b(Other)10 b(pa-)0 905 y(pers)j(and)h(technical)f(reports)f(on)h
(MARS)g(can)h(be)f(obtained)g(by)0 955 y(writing)8 b(to)i(the)g(above)h
(address.)0 1111 y Ff(Refer)o(ences)21 1210 y Fe([1])20 b(H.)31
b(Kopetz)f(and)h(W)l(.)g(Merker)n(,)37 b(\252The)31 b(architecture)90
1260 y(of)d(MARS,\272)h(in)f Fc(Pr)n(oc.)i(15th)e(Int.)g(Symposium)g(on)90
1309 y(Fault-T)l(olerant)10 b(Computing)p Fe(,)h(\(Ann)g(Arbor)n(,)i
(Michigan\),)90 1359 y(pp.)d(274\261279,)f(June)i(1985.)21
1454 y([2])20 b(H.)i(Kopetz,)j(A.)d(Damm,)k(C.)c(Koza,)k(M.)c(Mulazzani,)90
1504 y(W)l(.)g(Schwabl,)j(C.)d(Senft,)i(and)e(R.)f(Zainlinger)n(,)j(\252Dis-)
90 1554 y(tributed)6 b(fault-tolerant)f(real-time)i(systems:)14
b(The)8 b(MARS)90 1604 y(Approach,\272)21 b Fc(IEEE)f(Micr)n(o)p
Fe(,)g(vol.)f(9,)h(pp.)f(25\26140,)h(Feb.)90 1654 y(1989.)21
1749 y([3])g(H.)9 b(Kopetz,)g(H.)f(Kantz,)h(G.)g(Gr)540 1750
y(\310)537 1749 y(unsteidl,)f(P)-5 b(.)9 b(Puschner)n(,)g(and)90
1799 y(J.)j(Reisinger)n(,)f(\252T)m(olerating)g(transient)f(faults)g(in)h
(MARS,\272)90 1848 y(in)c Fc(Pr)n(oc.)g(20th)g(Int.)g(Symposium)f(on)g(Fault)
o(-T)l(olerant)g(Co)o(m-)90 1898 y(puting)p Fe(,)15 b(\(Newcastle)h(upon)e(T)
m(yne,)j(UK\),)e(pp.)h(466\261473,)90 1948 y(June)10 b(1990.)21
2043 y([4])20 b(H.)8 b(Kopetz)f(and)h(W)l(.)g(Ochsenreiter)n(,)h(\252Clock)e
(synchroniza-)90 2093 y(tion)12 b(in)h(distributed)e(real-time)i
(systems,\272)i Fc(IEEE)g(T)n(rans-)90 2143 y(actions)e(on)i(Computers)p
Fe(,)g(vol.)f(36,)i(pp.)e(933\261940,)g(Aug.)90 2193 y(1987.)21
2288 y([5])20 b(H.)15 b(Kopetz,)i(\252Sparse)f(time)f(versus)g(dense)h(time)f
(in)f(dis-)90 2338 y(tributed)9 b(real-time)i(systems,\272)h(Research)g
(Report)e(19/91,)90 2387 y(Institut)g(f)237 2388 y(\310)234
2387 y(ur)i(T)m(echnische)h(Informatik,)f(T)m(echnische)h(Uni-)90
2437 y(versit)185 2438 y(\310)183 2437 y(at)c(W)n(ien,)j(V)n(ienna,)e
(Austria,)g(Oct.)g(1991.)21 2532 y([6])20 b(P)-5 b(.)9 b(Puschner)g(and)f(C.)
g(Koza,)i(\252Calculating)d(the)h(maximum)90 2582 y(execution)17
b(time)g(of)g(real-time)g(programs,\272)j Fc(Real-T)n(ime)90
2632 y(Systems)p Fe(,)11 b(vol.)f(1,)g(pp.)h(159\261176,)e(Sep.)i(1989.)1017
154 y([7])20 b(G.)13 b(Fohler)f(and)g(C.)h(Koza,)h(\252Scheduling)d(for)h
(distributed)1086 203 y(hard)f(real-time)f(systems)i(using)e(heuristic)g
(search)i(strate-)1086 253 y(gies,\272)c(Research)h(Report)e(12/90,)g
(Institut)e(f)1725 254 y(\310)1722 253 y(ur)i(T)m(echnische)1086
303 y(Informatik,)19 b(T)m(echnische)h(Universit)1657 304 y(\310)1655
303 y(at)e(W)n(ien,)j(V)n(ienna,)1086 353 y(Austria,)10 b(June)g(1990.)1017
436 y([8])20 b(G.)13 b(Gr)1186 437 y(\310)1183 436 y(unsteidl)f(and)h(H.)g
(Kopetz,)i(\252A)e(reliable)g(multicast)1086 486 y(protocol)c(for)i
(distributed)e(real-time)i(systems,\272)i(in)d Fc(Pr)n(oc.)1086
535 y(8th)c(IEEE)i(W)l(orkshop)e(on)h(Real-T)n(ime)g(Operating)f(Systems)1086
585 y(and)j(Softwar)n(e)p Fe(,)h(\(Atlanta,)g(GA,)h(USA\),)f(May)h(1991.)1017
668 y([9])20 b(W)l(.)e(Sch)1214 669 y(\310)1211 668 y(utz,)h(\252On)f(the)f
(testability)e(of)i(distributed)e(real-)1086 718 y(time)9 b(systems,\272)i
(in)d Fc(Pr)n(oc.)j(10th)d(Symposium)h(on)g(Reliable)1086 768
y(Distributed)14 b(Systems)p Fe(,)k(\(Pisa,)g(Italy\),)e(pp.)g(52\26161,)g
(Sep.)1086 818 y(1991.)996 901 y([10])k(H.)j(Kopetz,)i(R.)e(Zainlinger)n(,)i
(G.)e(Fohler)n(,)j(H.)c(Kantz,)1086 951 y(P)-5 b(.)18 b(Puschner)n(,)j(and)c
(W)l(.)i(Sch)1519 952 y(\310)1516 951 y(utz,)h(\252An)d(engineering)g(ap-)
1086 1000 y(proach)11 b(to)f(hard)h(real-time)g(system)g(design,\272)h(in)e
Fc(Pr)n(oc.)j(of)1086 1050 y(the)j(Thir)n(d)g(Eur)n(opean)g(Softwar)n(e)f
(Engineering)h(Confer)o(-)1086 1100 y(ence,)e(ESEC)f('91)p
Fe(,)g(\(Milano,)f(Italy\),)g(pp.)h(166\261188,)f(Oct.)1086
1150 y(1991.)996 1233 y([11])20 b(H.)11 b(Kantz,)g(\252Flexible)f(handling)f
(of)h(diverse)h(dependabil-)1086 1283 y(ity)i(requirements)i(in)f(MARS,\272)i
(in)e Fc(Pr)n(oc.)j(10th)d(Sympo-)1086 1333 y(sium)e(on)h(Reliable)g
(Distributed)e(Systems)p Fe(,)k(\(Pisa,)g(Italy\),)1086 1382
y(pp.)10 b(142\261151,)f(Sep.)i(1991.)996 1465 y([12])20 b(H.)15
b(Kantz)h(and)f(K.)h(T)o(rivedi,)f(\252Reliability)e(modeling)h(of)1086
1515 y(the)f(MARS)g(system:)22 b(A)14 b(case)h(study)d(in)h(the)h(use)g(of)f
(dif-)1086 1565 y(ferent)c(tools)e(and)i(techniques,\272)h(in)e
Fc(4th)g(Int.)h(W)l(orkshop)f(on)1086 1615 y(Petri)17 b(Nets)h(and)e
(Performance)j(Models)p Fe(,)g(\(Melbourne,)1086 1665 y(Australia\),)9
b(pp.)i(268\261277,)e(Dec.)i(1991.)996 1748 y([13])20 b(W)l(.)13
b(Sch)1209 1749 y(\310)1206 1748 y(utz,)i(\252A)e(test)g(strategy)f(for)h
(the)f(distributed)f(real-)1086 1797 y(time)g(system)h(MARS,\272)g(in)f
Fc(IEEE)i(CompEur)n(o)e(90,)h(Com-)1086 1847 y(puter)f(Systems)g(and)g
(Softwar)n(e)f(Engineering)p Fe(,)h(\(T)m(el)g(A)m(viv)m(,)1086
1897 y(Israel\),)f(pp.)h(20\26127,)e(May)i(1990.)996 1980 y([14])20
b(H.)15 b(Kopetz,)h(P)-5 b(.)16 b(Holzer)n(,)g(G.)g(Leber)n(,)h(and)e(M.)g
(Schindler)n(,)1086 2030 y(\252The)8 b(rolling)d(ball)h(on)h(MARS,\272)h
(Research)g(Report)e(13/91,)1086 2080 y(Institut)k(f)1233 2081
y(\310)1230 2080 y(ur)h(T)m(echnische)j(Informatik,)d(T)m(echnische)j(Uni-)
1086 2130 y(versit)1181 2131 y(\310)1179 2130 y(at)9 b(W)n(ien,)i(V)n(ienna,)
f(Austria,)g(Nov)m(.)h(1991.)996 2213 y([15])20 b(A.)15 b(Steininger)f(and)i
(J.)f(Reisinger)n(,)i(\252Integral)e(design)f(of)1086 2262
y(hardware)9 b(and)f(operating)f(system)i(for)f(a)h(DCCS,\272)f(in)g
Fc(10th)1086 2312 y(IF)-5 b(AC)17 b(W)l(orkshop)h(on)f(Distributed)f
(Computer)g(Contr)n(ol)1086 2362 y(Systems)p Fe(,)11 b(\(Semmering,)g
(Austria\),)f(Sep.)h(1991.)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads