Disk partitioning on VMS with LDdriver Open VMS
- Slides: 47
Disk partitioning on VMS with LDdriver Open. VMS Technical Update Days The Netherlands October 11, 2006 Jur van der Burg Software Resources International www. softresint. eu © 2006 Jur van der Burg www. digiater. nl The information contained herein is subject to change without notice
LDdriver: What can it do? • Use a file on any disk as a disk • Use a range of logical blocks on a disk as a new disk • Investigate I/O behavior • Test application error handling • Play around with disks without doing damage • Emulate • Create 3/9/2021 a magtape on disk (V 9. 0, in development) havoc (with privileges) 2
Where can I find it? • On the Open. VMS freeware website http: //www. hp. com/go/openvms/freeware • On the main lddriver site http: //www. digiater. nl/lddriver • Integrated • Fully 3/9/2021 in VMS since V 7. 3 -1(sort of. . ) integrated in VMS V 8. 2 3
Preparation • Ready for use after @SYS$STARTUP: LD$STARTUP • Any command that needs the driver will give an error if not started properly: $ LD CONNECT FILE. DSK LDA 1 %LD-F-INVOKESTARTUP, LD has not been setup correctly, invoke @SYS$STARTUP: LD$STARTUP. COM • Exceptions are LD HELP and LD CREATE • Version can be obtained like this: $ LD VERSION %LD-I-VERSION, LD version V 9. 0, module X-9 built on Oct 10 2006 13: 46: 25 -LD-I-DRIVERVERSION, Driver version: 10 -OCT-2006 13: 56: 45. 44 (MON version) -LD-I-SYSINFO, Node: THEBAT, Hardware: hp Alpha. Server DS 20 L 833 MHz, VMS version: XB 9 P-BL 2 3/9/2021 4
Basics – File mode • Use a file as a disk • Create a file on a physical disk: LD CREATE DKA 100: [LD]DISK/SIZE=10000 • Connect the file to a device: LD CONNECT DKA 100: [LD]DISK LDA 1 • Use it: INIT LDA 1: LDDISK MOUNT LDA 1: LDDISK. . . DISMOUNT LDA 1: • Disconnect the file: LD DISCONNECT LDA 1 3/9/2021 5
Basics – LBN mode • Use a range of logical blocks as a disk • Physical disk may not be used by anything else • Connect a range of logical blocks to a disk: LD CONNECT DKA 100: /LBN=(START=0, END=9999) LDA 1 LD CONNECT DKA 100: /LBN=(START=10000, END=19999) LDA 2 LD CONNECT DKA 100: /LBN=(START=20000, END=29999) LDA 3 • Connect using a size: LD CONNECT DKA 100: /LBN=(START=0, SIZE=10000) LDA 1 LD CONNECT DKA 100: /LBN=(START=10000, SIZE=10000) LDA 2 LD CONNECT DKA 100: /LBN=(START=20000, SIZE=10000) LDA 3 3/9/2021 6
Basics – Replace mode • Access • Not another disk via an LD device a real form of partitioning • Useful for I/O tracing and watchpoints • Physical disk may not be used by anything else • Connect and replace: LD CONNECT DKA 100: /REPLACE LDA 1 3/9/2021 7
Advanced use • Sharing • LD of LD devices in a cluster is possible devices itself are not MSCP-served • For shared use the physical devices where the container file resides must be MSCP served • Shadowing host-based raid disks • LD devices may be nested, i. e. you can create an LD disk on an LD disk etc. 3/9/2021 8
Sharing LD devices • LD devices must be connected the same way on multiple nodes to allow sharing of container files • This means the same device name, allocation class, geometry, filename, etc. • Any mismatch will be detected by the driver • The utility attempts to give the reason for the failure $ ld connect $1$dga 1: lda 3: /lbn=(start=600, end=2000)/log/share %LD-F-DEVICEINUSE, Device incompatible connected to other LD disk in cluster -LD-F-RANGEINUSE, LBN range already in use 3/9/2021 9
I/O tracing • Very powerful feature to see what’s happening on a low level • Can be viewed real-time (continuously) • Can be logged to disk (unattended) • Flexible selectable output − different time formats − different I/O status block formats − different I/O function code formats 3/9/2021 10
I/O Tracing example $ ld trace lda 1: . . . $ ld show/trace lda 1 I/O trace for device $7$LDA 1: 26 -APR-2006 22: 18: 36. 28 on node LDDRVR: : Start Time Elaps Pid Lbn Bytes Iosb Function -------------------------------22: 18: 32. 65 00. 00 09 C 00227 0 0 NORMAL PACKACK|INHERLOG 22: 18: 32. 65 00. 01 09 C 00227 1 512 NORMAL READPBLK 22: 18: 32. 66 00. 00 09 C 00227 1034 512 NORMAL READPBLK 22: 18: 32. 67 00. 00 09 C 00227 5002 512 NORMAL READPBLK 22: 18: 32. 68 00. 00 09 C 00227 5002 512 NORMAL WRITEPBLK 22: 18: 32. 69 00. 00 09 C 00227 5003 1536 NORMAL READPBLK 22: 18: 32. 69 00. 00 09 C 00227 5006 512 NORMAL READPBLK 22: 18: 32. 69 00. 00 09 C 00227 5000 512 NORMAL READPBLK|EXFUNC 22: 18: 32. 69 00. 00 09 C 00227 0 0 NORMAL PACKACK|BYPASS_VALID_CHK 22: 18: 32. 70 00. 00 09 C 00227 5016 512 NORMAL READPBLK|EXFUNC 22: 18: 32. 70 00. 00 09 C 00227 5023 1024 NORMAL READPBLK 22: 18: 32. 70 00. 00 09 C 00227 5016 512 NORMAL WRITEPBLK|EXFUNC|DATACHECK 3/9/2021 11
Watchpoints • A watchpoint is a special action performed when a targeted logical block is hit by a request • These actions are possible: − Return a specific error − Suspend the I/O request − Generate an Opcom message − Crash the system (needs CMKRNL privilege) • The user controls which LBN is watched, on which function code is acted, and which error is returned • The ‘Opcom’ action may be combined with other actions 3/9/2021 12
Watchpoint example $ ld watch lda 1 1/action=error=2928 $ ld watch lda 1 1/action=opcom $ ld show/watch lda 1 Index LBN Action Function Error return code ----------------------------------1 1 Opcom READPBLK 2 1 Error READPBLK 0 B 70 (FISH) $ dump lda 1: /block=(count=1, start=1) %%%%%% OPCOM 5 -APR-2006 14: 21: 46. 70 %%%%%% Message from user VDBURG on LDDRVR ***** LDdriver detected LBN watchpoint access ***** PID: 26000224 Image: DUMP Device: $7$LDA 1: (LDDRVR) Function: 000 C LBN: 1 %DUMP-E-READERR, error reading LDA 1: -SYSTEM-W-FISH, my hovercraft is full of eels 3/9/2021 13
Callable interface • LDdriver is controlled by a user mode program issuing normal QIO requests • The required function codes and definitions are available in the kit, and in VMS since V 8. 2 -1 ($LDDEF or lddef. h) • The driver is doing very strong validity checks of all requests (You can’t shoot yourself in the foot (if you can, I apologize, please let me know how you did it)) 3/9/2021 14
Limits • Create as many devices as your diskspace allows • Creation of any device takes BYTLM quota from the creating process • The tracebuffer as well as watchpoints come out of non-paged pool and are charged against BYTLM as well • If 9999 LD devices are not enough then you can create LD devices on other controllers, like LDB 1: , LDC 1: , etc. • Configure the driver with @SYS$STARTUP: LD$STARTUP x where x is the controller to use. 3/9/2021 15
Old versions • LD V 8. 1: − LD CREATE/EXTEND Allows extension of existing container file Expand volume with SET VOLUME/SIZE − LD CONNECT/NOFORCED_ERROR Prevent handling of forced errors with shadowing − Bug fixes: • Fix possible system crash in I/O completion • Fix I/O hang with host-based raid • Fix mount verification issues 3/9/2021 16
Old versions • LD V 8. 2: − LD V 8. 2 has no new features when compared to V 8. 1 − It is only a bug fix release. • Properly expel shadowset members on error • Reconnecting an LD device could fail the first time after reboot if the container file was used on another node • Allow container file on an NFS mounted ODS 5 volume • Prevent system crash on reconnecting a container file in a cluster 3/9/2021 17
New developments • LD V 9. 0: − Control utility rewritten in Ansi-C − More accurate timing in trace records (With VMS V 8. 3 and up) $ ld show/trace lda 1 I/O trace for device $3$LDA 1: 17 -MAY-2006 09: 21: 15. 16 on node THEBAT End Time Elaps Pid Lbn Bytes Iosb Function ----------------------------------09: 21: 12. 232269 00. 000000 2060042 F 0 0 NORMAL PACKACK 09: 21: 12. 240950 00. 008581 2060042 F 1 512 NORMAL READPBLK 09: 21: 12. 247513 00. 006426 2060042 F 1034 512 NORMAL READPBLK 09: 21: 12. 248595 00. 000959 2060042 F 50033 512 NORMAL READPBLK 09: 21: 12. 249557 00. 000838 2060042 F 50034 512 NORMAL READPBLK 09: 21: 12. 255176 00. 005504 2060042 F 50016 512 NORMAL READPBLK 09: 21: 12. 263548 00. 008258 2060042 F 50016 512 NORMAL WRITEPBLK 3/9/2021 18
New developments - cont − LD CREATE/ERASE Erase container file on creation. This has no effect if highwater marking is turned on. − LD CREATE will issue a warning if highwater-marking is turned on and the size of the container file is more than 100000 blocks (VMS V 8. 2 and up): %LD-W-HIGHWATER, Highwater marking is enabled on device, be patient − LD SHOW/FULL Will show all attributes of the selected LD device. $ ld show/all/full %LD-I-CONNECTED, Connected _$3$LDA 1: to $1$DGA 100: [JUR. LD. V 90. SRC]FILE. DSK; 1 -LD-I-OPTIONS, Shared %LD-I-CONNECTED, Connected _$3$LDA 2: to _$3$DQA 0: -LD-I-OPTIONS, Replaced, Trace active, No DSE support, Not Forced Error capable 3/9/2021 19
New developments - cont LD SHOW/SYMBOL − Get the LD unit number in DCL symbol LD_UNIT, and the container file specification in the symbol LD_CONTAINER. − LD SHOW/TRACE/TIMESTAMP=START or END Allow display of absolute start and end time of trace data. − LD CONNECT/LOGICAL=(NAME=logical-name [, TABLE=table] [, MODE=mode]) Assign logical name to LD device at connect time 3/9/2021 20
New developments – Tape emulation • Emulate tape device − Device is called ‘LM’ (Logical Magtape) • Uses the same driver as LD • One single driver acts like a disk or tape (!) $ lm create tape 1/size=10000 $ lm connect tape 1 lma 1/log %LM-I-CONNECTED, Connected $3$LMA 1: to $1$DGA 100: [JUR. LD. V 90. SRC]TAPE 1. DSK; 1 $ show dev/fu lma 1 Magtape $3$LMA 1: (THEBAT), device type (Generic SCSI tape), is online, fileoriented device. Error count Owner process ID Reference count Density Allocation class Volume status: 3/9/2021 0 "" 0000 0 6666 12 Operations completed 2 Owner UIC [JUR] Dev Prot S: RWPL, O: RWPL, G: R, W Default buffer size 2048 Format Normal-11 no-unload on dismount, odd parity. 21
New developments – Tape emulation $ init lma 1 test $ lm trace lma 1 $ mount/foreign lma 1 %MOUNT-I-MOUNTED, TEST mounted on _$3$LMA 1: (THEBAT) $ dismount lma 1: $ lm show/trace lma 1: I/O trace for device $3$LMA 1: 10 -OCT-2006 14: 38: 17. 05 on node THEBAT Start Time Elaps Pid Lbn Bytes Iosb Function ------------------------------14: 38: 11. 10 00. 00 2020042 A 0 0 NORMAL PACKACK 14: 38: 11. 10 00. 00 2020042 A 0 0 NORMAL REWIND 14: 38: 11. 10 00. 01 0000 0 524288 NORMAL READPBLK 14: 38: 11. 11 00. 00 2020042 A 0 80 ENDOFFILE READPBLK 14: 38: 11. 11 00. 00 2020042 A 0 0 NORMAL REWIND 14: 38: 14. 71 00. 00 2020042 A 0 0 NORMAL UNLOAD|CLSEREXCP 14: 38: 14. 71 00. 00 2020042 A 0 0 NORMAL AVAILABLE 3/9/2021 22
New developments – Tape emulation − LM SWITCH LMA 1 newfile. dsk • Allows volume switching for backup − LM ANALYZE file. dsk [/FULL] • Verifies the integrity of the container file $ lm analyze file. dsk %LM-I-ANALYZEOK, Container file structure successfully verified 3/9/2021 23
New developments – Tape emulation This is where we are right now. • Backup support will follow soon. • $ copy/log 10 mb. bin lma 1: %COPY-S-COPIED, DATA: [JUR. LD. V 90. SRC]10 MB. BIN; 1 copied to LMA 1: (163840 records) $ set magtape/rewind lma 1: $ copy/log lma 1: 10 mb. new %COPY-S-COPIED, LMA 1: copied to DATA: [JUR. LD. V 90. SRC]10 MB. NEW; 1 (163840 records) $ diff/mode=hex 10 mb. bin 10 mb. new Number of difference sections found: 0 Number of difference records found: 0 DIFFERENCES /IGNORE=()/MERGED=1/MODE=(HEXADECIMAL)DATA: [JUR. LD. V 90. SRC]10 MB. BIN; 1 DATA: [JUR. LD. V 90. SRC]10 MB. NEW; 1 3/9/2021 24
New developments – Tape emulation $ init lma 2 test $ back/log DATA: [JUR. LD. V 90. KIT]*. * lma 2: lm/save/rewind/ignore=label %MOUNT-I-MOUNTED, TEST mounted on _$3$LMA 2: (THEBAT) %BACKUP-I-LBLOVRWRITE, volume label TEST overwritten, new label is LM %MOUNT-I-MOUNTED, LM mounted on _$3$LMA 2: (THEBAT) %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]BIGDISK. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_FILE_SHADOW. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_FILE_SHARE_LOCK. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_FILE_TRACE. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_LBN_SHARE. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_MOUNTVER. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]LD_REPLACE. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]MOUNTVER. COM; 1 %BACKUP-S-COPIED, copied DATA: [JUR. LD. V 90. KIT]SHADOW_RAM. COM; 1 $ lm analyze file. dsk %LM-I-ANALYZEOK, Container file structure successfully verified 3/9/2021 25
Internals – connecting a container file • The most tricky part is connecting an LD device to a container file − Container file physical device must be a mounted disk − It must contain a known file system − File must be mapped with cathedral windows − Caching must be disabled for this file − Check for usage on other cluster members • File ID • Allocation class • Device name / controller letter / unit number • Geometry • Maximum block size • Sharing • Mode of connection 3/9/2021 26
Internals – connecting a disk by LBN • Connecting part of a disk by LBN range needs other checks − Physical device may not be mounted − It may not be accessed on any other node − The logical block range must fit and may not be in use anywhere in the cluster − The exception is that parts that match exactly may be shared − After connecting the physical device is guarded against access with a lock which prevents mounting 3/9/2021 27
Internals – checking LBN range (1) • When connecting a part of a physical disk we need to check availability of the logical blocks, clusterwide − We can’s take out a lock based on a resource name with the encoded range as we don’t know what’s used on other nodes − We don’t want to invoke a helper process – driver check only! − We can’t store all ranges in a valueblock − So we use the lockmanager in a smart way 3/9/2021 28
Internals – checking LBN range (2) • At connection time the block range we want is entered in a lock value block • By taking out a lock a blocking AST routine is fired on other nodes with interest in the same device − The blocking routine scans all local LD devices for a matching device − If found the LBN range is checked − In case of an error a bit is set in the lock value block − After lock conversion the initiator examines the error bit and rejects the request if set 3/9/2021 29
Internals – Finding an I/O • LDdriver sends most I/O requests it receives directly to the physical disk driver • This may happen for multiple file segments in parallel • This can make it harder to find an active I/O − IRP’s forwarded to the physical disk can be found in the LDIOB structure − LDdriver’s structure definitions can be found in SYS$LDDRIVER. STB (only after installing the LD kit) 3/9/2021 30
SDA> read/exec SDA> show device lda 2. . . SDA> format/typ=ldiob @(ucb+ucb$l_ld_aiofl) FFFF. 81 DDE 140 LDIOB$L_QFL 81 DD 9800 FFFF. 81 DDE 144 LDIOB$L_QBL 81 DD 9800 FFFF. 81 DDE 148 LDIOB$W_SIZE 0080 FFFF. 81 DDE 14 A LDIOB$B_TYPE 13 FFFF. 81 DDE 14 B LDIOB$B_SPARE 53 FFFF. 81 DDE 14 C LDIOB$L_IRP 81 DB 1780 FFFF. 81 DDE 150 LDIOB$L_PID 0001002 B FFFF. 81 DDE 154 LDIOB$L_MEDIA 0000 FFFF. 81 DDE 158 LDIOB$L_BCNT 00000200 FFFF. 81 DDE 15 C LDIOB$W_FUNC 000 C FFFF. 81 DDE 15 E LDIOB$W_IOST 0001 FFFF. 81 DDE 160 LDIOB$Q_STAT 0000 FFFF. 81 DDE 168 LDIOB$Q_ST_TIME 0000 FFFF. 81 DDE 170 LDIOB$Q_EN_TIME 000000 A 8. 00010025 FFFF. 81 DDE 178 LDIOB$Q_ST_SCC 0000. 1 C 10 E 15 D FFFF. 81 DDE 180 LDIOB$Q_EN_SCC 44070017. 34465003 FFFF. 81 DDE 188 LDIOB$L_ST_CPU 0000 FFFF. 81 DDE 18 C LDIOB$L_EN_CPU 0000 FFFF. 81 DDE 190 LDIOB$L_ELAPSED 0000 LDIOB$Q_ELAPSED FFFF. 81 DDE 194 0000 FFFF. 81 DDE 198 LDIOB$Q_ST_USEC 613 D 6500. 746 C 7561 FFFF. 81 DDE 1 A 0 LDIOB$Q_EN_USEC 2 F 657461. 642 F 6 C 6 C FFFF. 81 DDE 1 A 8 LDIOB$L_ABCNT 0000 FFFF. 81 DDE 1 AC LDIOB$L_KPB 81 C 5 C 9 C 0 FFFF. 81 DDE 1 B 0 LDIOB$L_FWDQFL 81 DC 0878 FFFF. 81 DDE 1 B 4 LDIOB$L_FWDQBL 81 DC 0878 FFFF. 81 DDE 1 B 8 LDIOB$W_IRPCNT 0001 FFFF. 81 DDE 1 BA LDIOB$W_FLAGS 0000 SDA> format @(@(ucb+ucb$l_ld_aiofl)+ldiob$l_fwdqfl)-irp$l_ld_fwdqfl FFFF. 81 DC 0640 IRP$L_IOQFL 81 DC 5 BA 0 FFFF. 81 DC 0644 IRP$L_IOQBL 81 DC 5 BA 0 FFFF. 81 DC 0648 IRP$W_SIZE 0240 FFFF. 81 DC 064 A IRP$B_TYPE 0 A FFFF. 81 DC 064 B IRP$B_RMOD 00 FFFF. 81 DC 064 C IRP$L_PID 81 B 278 F 0. . . 3/9/2021 UCB+00200 LNM$C_DEL_OVERLAY+00027 Number of bytes transferred so far Queue of forwared IRP's Number of active forwarded IRP's SYS$LDDRIVER+118 F 0 31
Which VMS versions? • Runs on VAX/VMS since V 5. 5 -2 • Alpha • IA 64 • The V 8. 2 and higher current kit is HP-VMS-LD-V 0802 --1. PCSI • Installs • VAX • Ia 64 on: V 7. 3 • Alpha 3/9/2021 V 6. 1 and higher V 7. 2 -2 V 7. 3 -1 V 7. 3 -2 V 8. 2 -1 32
Other versions • Other versions may work too, but the driver and utility needs to be built from source (included in the kit) • Build • C procedure is included compiler required • Driver may need an edit for specific versions (enable / disable a conditional) • LD V 9. 0 will NOT run on VAX! − LD V 8. 2 will be the last release for VAX/VMS • LD V 8. 2 is integrated in the VMS V 8. 3 release 3/9/2021 33
Known issues • V 8. 2: − If the XFC cache is turned off (VCC_FLAGS != 2) then connecting a file will return this error: • %LD-F-BLKOUTOFRANGE, Blocks out of range − This problem is corrected in VMS V 8. 3 and the future LD V 9. 0 kit 3/9/2021 34
HP internal usage • Heavily • Used used for testing in the VMS build • Host-based Infoserver • CDRECORD • COPY/RECORDABLE_MEDIA 3/9/2021 (CDDVD) 35
Futures • Bug fixes (if any. . ) • You name it. . suggestions are welcome (buy me a drink ) 3/9/2021 36
More information • LDDRIVER article in the HP technical journal (V 6) http: //www. hp. com/go/openvms/journal • After installation: $ LD HELP • Keep an eye on the website for the V 9. 0 release. http: //www. digiater. nl/lddriver • Questions / Bugs / Ideas? Email: lddriver@digiater. nl 3/9/2021 37
3/9/2021 38
LD_FILE. COM $ $ $ $ ld create disk 1. dsk /size=5000 ld connect disk 1. dsk lda 1: ld show lda 1: ld trace lda 1: init lda 1: test mount lda 1: test dir lda 1: [000000] ld show/trace lda 1: ld trace/reset lda 1: dismount lda 1: ld show/trace lda 1: ld disconnect lda 1: delete disk 1. dsk; 3/9/2021 39
LD_FILE_SHARE. COM $ $ $ $ if f$search("disk 1. dsk"). eqs. "" then ld create disk 1. dsk /size=5000 ld connect disk 1. dsk lda 1: /share/alloclass=4/log init lda 1: test else ld connect disk 1. dsk lda 1: /share/alloclass=4/log endif mount/system lda 1: test show dev lda 1 inquire dummy "return to continue" dismount lda 1: ld disconnect/log lda 1: if f$search("disk 1. dsk"). nes. "" then delete disk 1. dsk; 3/9/2021 40
LD_FILE_SHARE_LOCK. COM $ $ $ $ if f$search("disk 1. dsk"). eqs. "" then ld create disk 1. dsk /size=5000 ld connect disk 1. dsk lda 1: /share/alloclass=4/log/lock init lda 1: test else ld connect disk 1. dsk lda 1: /share/alloclass=4/log/lock endif mount/system lda 1: test show dev lda 1 inquire dummy "return to continue" dismount lda 1: ld disconnect/log lda 1: if f$search("disk 1. dsk"). nes. "" then delete disk 1. dsk; 3/9/2021 41
LD_FILE_TRACE. COM $ on control_y then goto exit $ ld create disk 1. dsk /size=5000 $ ld connect disk 1. dsk lda 1: /log $ init lda 1: test $ mount lda 1: test $ ld trace lda 1: $loop: $ dir lda 1: [000000] $ wait 0: 0: 5 $ analyze/disk lda 1: $ wait 0: 0: 5 $ goto loop $ dismount lda 1: $exit: $ set noon $ dismount lda 1: $ ld trace/stop lda 1: $ ld disconnect lda 1: $ delete disk 1. dsk; 3/9/2021 42
LD_FILE_SHADOW. COM $ $ $ $ $ $ ld create disk 1. dsk /size=5000 ld create disk 2. dsk /size=5000 ld connect disk 1. dsk lda 1: /log/alloclass=4 ld connect disk 2. dsk lda 2: /log/alloclass=4 ld trace lda 1: ld trace lda 2: init lda 1: test mount dsa 0: /shadow=($4$lda 1: , $4$lda 2: ) test ld show/trace lda 1: ld show/trace lda 2: ld trace/reset lda 1: ld trace/reset lda 2: show shadow/copy inquire dummy "return to continue" dismount dsa 0: ld show/trace lda 1: ld show/trace lda 2: ld disconnect lda 1: ld disconnect lda 2: delete disk 1. dsk; delete disk 2. dsk; 3/9/2021 43
LD_LBN. COM $ $ $ $ $ $ $ phdev : = $9$dka 400: show dev 'phdev' ld connect 'phdev' lda 1: /log/lbn=(start=0, count=10000) ld connect 'phdev' lda 2: /log/lbn=(start=10000, count=10000) ld connect 'phdev' lda 3: /log/lbn=(start=20000, count=10000) ld connect 'phdev' lda 4: /log/lbn=(start=30000, count=10000) init lda 1: test 1 init lda 2: test 2 init lda 3: test 3 init lda 4: test 4 mount lda 1: test 1 mount lda 2: test 2 mount lda 3: test 3 mount lda 4: test 4 show dev lda 1 show dev lda 2 show dev lda 3 show dev lda 4 show dev 'phdev' inquire dummy "return to continue" dismount lda 1: dismount lda 2: dismount lda 3: dismount lda 4: ld disconnect/log/all show dev 'phdev' 3/9/2021 44
LD_LBN_SHARE. COM $ $ $ $ $ $ phdev : = $9$dka 400: show dev 'phdev' ld connect 'phdev' lda 1: /log/lbn=(start=0, count=10000)/share/alloclass=4 ld connect 'phdev' lda 2: /log/lbn=(start=10000, count=10000)/share/alloclass=4 ld connect 'phdev' lda 3: /log/lbn=(start=20000, count=10000)/share/alloclass=4 ld connect 'phdev' lda 4: /log/lbn=(start=30000, count=10000)/share/alloclass=4 mount/system lda 1: test 1 mount/system lda 2: test 2 mount/system lda 3: test 3 mount/system lda 4: test 4 show dev lda 1 show dev lda 2 show dev lda 3 show dev lda 4 show dev 'phdev' inquire dummy "return to continue" dismount lda 1: dismount lda 2: dismount lda 3: dismount lda 4: ld disconnect/log/all show dev 'phdev' 3/9/2021 45
LD_REPLACE. COM $ $ $ $ phdev : = $9$dka 400: show dev 'phdev' ld connect 'phdev' lda 1: /log/replace ld trace lda 1: init lda 1: test 1 mount lda 1: test 1 show dev/full lda 1 show dev/full 'phdev' ld show/trace lda 1: inquire dummy "return to continue" dismount lda 1: ld disconnect/log lda 1: show dev 'phdev' 3/9/2021 46
LD_MOUNTVER. COM $ $ $ $ $ $ ld create disk 1. dsk ld connect/log/symbol disk 1. dsk init/nohigh/system lda'ld_unit': test mount lda'ld_unit': test ld trace lda'ld_unit': ld watch lda'ld_unit': 1/action=error=%x 84/function=code=%x 0808 ld watch lda'ld_unit': 10/action=error=%x 84/function=read ld watch lda'ld_unit': 10/action=opcom/function=read ld show/watch lda'ld_unit': reply/enable/temp spawn/nowait/input=nl: dump lda'ld_unit': /block=(start=10, count=1) inquire dummy "return to continue" ld nowatch lda'ld_unit': ld show/trace lda'ld_unit': reply/disable wait 0: 0: 1 dism lda'ld_unit': set noon ld trace/stop lda'ld_unit': ld disc lda'ld_unit': delete/nolog/noconf disk 1. dsk; 3/9/2021 47
- Fixed partitioning and dynamic partitioning
- Types of storage management
- Open innovation open science open to the world
- Yacimiento vms
- Retroperitoneum anatomie
- Sulfuros masivos volcanogénicos (vms)
- Jinju presentation centre
- Sade card
- Univerzitet bitola
- N laryngeus inferior
- Vms herp
- Vms library
- Nadav amit
- Adani mundra visitor pass
- Vms deposits
- Msp vms best practices
- Andrew ng vms
- Tipos de vms
- Voyage estimation calculation example
- Dalvik vs jvm
- ¡vms4500
- Marketing channels delivering customer value
- Vm.n
- Directed line segment vector
- Resource partitioning
- Niche partitioning
- Competitive exclusion vs resource partitioning
- Partitioning a line segment formula
- Equivalence partitioning example
- Bddgaf
- Partitioning a line segment formula
- Three way partitioning
- Channel partitioning mac protocols
- Oracle interval partitioning by month example
- Oracle interval partitioning by month example
- Hw sw partitioning
- Gause
- Sql server vertical partitioning
- Contoh equivalence partitioning
- Fm algorithm partitioning example
- Endocardial cushions
- Partitioning numbers to 100
- Atm testing
- Equivalence partitioning black box testing
- çç
- Strong normal equivalence class testing
- British colonies in africa
- Resource partitioning