Verwijderd schreef op 17 december 2003 @ 09:49:
[...]
De grootste reden dat de overheid, heel veel banken, en bijna alle defensie(s) het gebruiken is echt geen geldgebrek hoor. Die licenties en machines kosten godsvermogens...
Er is gewoon niks zo stabiel en _veilig_ gebleken als VMS. Dat zie je in uptimes, en in wat alle missie kritieke systemen draaien.
Hmm, als je wat nieuwe installaties meemaakt dan zie je ook de keerzijde van de medallie.
Bij een klant veel problemen gehad met een crashende machine. Geen idee waar het aan lag, dumpfile elke keer opgestuurd naar DEC, kwamen ze een keer terug met 'de processor fan zegt dat hij niet draait'. Leuk, dit is een 4-processor machine, VMS is runtime configurable (CPU's kun je uitschakelen op de prompt), schrijf je OS dan GVD zo dat die CPU uitgeschakelt wordt en niet crasht! Kijk, dat dat met een single-CPU systeem niet werkt is duidelijk, maar als je er toch 4 hebt?
Komt er een service man, hadden we ook wat andere probleempjes (met de HSZ50 zijn ook veel problemen geweest. HSZ50=SCSI raid controller). Nee, wist hij niks van af want dat was software, en hij was hardware. Nou, niet alleen was hij hardware, hij was ook niets meer dan een plugger. Het enige dat hij kon was een kaartje eruit trekken en een ander erin pluggen.
Maar goed, dat is de serviceorganisatie en niet het OS.
Later wel nog een leuke bug bij VMS 7.3 en CDE gehad. Ik logde me een keer in op de console, hangt het login venster. Hmz, ga naar de tweede (in cluster), log me in, hangt het login venster. Hmmmzzz, klote bak. Ik loop naar de NT server in het rack achter me om een telnet op te starten gaat de telefoon:
projectleider: 'wat ben je aan het doen?'
ik:'huh? niks? ik probeer me in te loggen en het loginscherm hangt'
projectleider: 'loginscherm hangt? HET HELE MAGAZIJN STAAT STIL!'
Na enig onderzoekwerk (en ja, nog een paar crashes) bleek dat VMS crashte op het moment dat je op de console in CDE wilde inloggen. Leuk detail was dat je in CDE een zgn. 'failsafe session' kunt starten. Dan krijg je 1 terminal venster en meer niet. Dat ging wel. Alleen crashte VMS toen bij het uitloggen.

Ik heb toen stad en land afgezocht (en DEC gebeld) voor een mogelijkheid om CDE op de console te disabelen. Je wil dat ook niet op je console. Dat het kon wist ik omdat in een ander projekt de console ook gewoon tekst was.
DEC wist het niet. Via internet kreeg ik een tip om X ergens uit te schakelen. Krijg ik een uurtje nadat ik dat gedaan heb telefoon:
programmeur: 'wat heb je gedaan?'
ik: 'huh? niks? (ja, ik ontken altijd alles) ik heb X uitgeschakeld om geen CDE op de console te hebben'
programmeur: 'WE KUNNEN NIKS MEER COMPILEREN!'
Bleek dat alhoewel wij alleen consoleapplicaties maken, de compiler wel de X libraries nodig heeft en die niet kan vinden als X op de console is uit geschakeld.

beats me waarom en waarom het bij een ander projekt dan wel werkte, maar tot het moment dat ik een jaar later off-site was was er
- geen oplossing voor het crashen
- geen oplossing voor een tekstbased console.
Het word nu nog zeker op best grote schaal geimplementeerd. De cluster mogelijkheden van VMS zijn onge-evenaard.
True. Je merkt gewoon niet dat het twee machines zijn.
Van de andere kant is de schaalbaarheid van de architectuur die DEC heeft opgezet naadje.
De GS160 waar ik eerder over sprak is in feite een groot rack met 4xES40 erin gemonteerd. Allemaal zijn ze separaat maar zitten in een cluster. Wij hadden dus een GS160 met 2xES40 (elk 4 processoren) en het bleek dat van die 8 processoren er al 2 nodig waren om de twee machines over en weer up-to-date te houden. Dit werkt misschien bij weinig processen, maar wij hadden een stuk of 500 processen lopen. Het voordeel van de 8 processoren was weg.
edit:
@Mdeen: Is 'cd' een fortran programma? Of een DCL script?
mag ik het hebben
plzzzzz??
Daar moest ik inderdaad ook heel erg aan wennen ja.
CD is gewoon DCL:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
| $!
$! normal CD for VMS
$! by M Deen for the GOT community
$!
$ veri_image = F$ENVIRONMENT ("VERIFY_IMAGE")
$ veri_proc = F$ENVIRONMENT ("VERIFY_PROCEDURE")
$! set noveri
$!
$!
$! no arguments: show current directory
$!
$ IF p1 .eqs. ""
$ THEN
$ p1 = f$directory()
$ GOTO shdflt
$ ENDIF
$!
$!
$! argument ..: go one directory up
$!
$ IF p1 .eqs. ".."
$ THEN
$ p1 = F$DIRECTORY()
$ p2 = ""
$ NUM = 0
$ LOOP:
$ LABEL = F$ELEMENT(NUM, ".", p1)
$
$ IF F$EXTRACT (F$LENGTH(LABEL)-1, 1, label) .EQS. "]" THEN GOTO EXITLOOP
$ p2 = p2 + LABEL + "."
$ NUM = NUM + 1
$ GOTO LOOP
$
$ EXITLOOP:
$ p1 = F$EXTRACT (0, F$LENGTH(p2)-1, p2) + "]"
$ set default 'p1'
$ GOTO shdflt
$ ENDIF
$!
$!
$! argument starts with .: go to specified directory
$!
$ IF F$EXTRACT(0, 1, p1) .eqs. "."
$ THEN
$ dirc = F$directory()
$ p1 = F$EXTRACT(0, F$LENGTH(dirc)-1, dirc) + p1 + "]"
$ set default 'P1'
$ GOTO shdflt
$ ENDIF
$!
$!
$! other cases: old-style VMS
$!
$ set default 'p1'
$!
$!
$! show current directory
$!
$ shdflt:
$ node_name = F$TRNLNM ("SYS$NODE")
$ prl = F$LENGTH (node_name)
$!
$ IF "" .EQS. F$TRNLNM (P1)
$ THEN
$ new_prompt = F$EXTRACT (0,prl-2,node_name)
$ ELSE
$ new_prompt = F$EXTRACT (0,prl-2,node_name) + "::" + "''P1'"
$ ENDIF
$!
$ set prompt="''new_prompt'> "
$ temp = F$VERIFY (veri_proc, veri_image)
$ sho default |
Signatures zijn voor boomers.