Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!caip!sri-spam!nike!ucbcad!ucbvax!sdcsvax!celerity!telesoft!bruceb From: bruceb@telesoft.UUCP (Bruce Bergman @favorite) Newsgroups: net.micro,net.micro.pc Subject: PCVMS and OST review Message-ID: <338@telesoft.UUCP> Date: Thu, 24-Jul-86 02:59:26 EDT Article-I.D.: telesoft.338 Posted: Thu Jul 24 02:59:26 1986 Date-Received: Sun, 27-Jul-86 17:33:01 EDT Organization: TeleSoft, SanDiego CA Lines: 287 Xref: mnetor net.micro:5684 net.micro.pc:5930 [Yes, Virginia, there really IS a line eater...] I apologize for those of you who have been waiting for this review. I often get caught behind the eight-ball, however I hope this will provide some insight into the Wendin products. PCVMS ----- PCVMS is one of two operating systems created for the IBM PC (and clones) by Wendin [1]. The other operating system (not covered in this review) is called PCUNIX. Both attempt to offer the PC user the ability to use a close approximation of the "original" operating system. PCVMS is modeled after DEC's VAX/VMS [2] operating system, while PCUNIX is modeled after the popular UNIX [3] operating system by AT&T. Also provided by Wendin is the Operating System Toobox (OST). I'll try and cover PCVMS first, leading into the OST later. PCVMS is one completely full floppy disk worth of programs and information files that are placed onto one's hard disk (or used from a floppy) and used as a substitue operating system for MS-DOS. The disk for PCVMS comes complete with a fairly nice three-ring bound manual. The manual covers most of the commands for PCVMS and gives a short introduction to using PCVMS at the system programming level. The manual is easy to understand if you are familiar with DEC's VMS documentation, however for one who has never read such a blunt description of capabilities, it could be intimidating. Having read many a thick VMS manual myself, I found myself comparing each command with its real counterpart. The manuals don't compare easily, however a working knowledge of VMS is all that is necessary to get to know the commands that PCVMS offers. I've come to believe that PCVMS was created by Wendin as an example of how to use their Operating System Toolbox. The implementation of PCVMS provided by Wendin is a sad comparison with the original operating system. While it provides many of the same type of commands and functions as VMS, it lacks the coherency and consistency of true VMS. As a good example, if you were interested in changing your privilege on VMS, you might issue a command similar to this: SET PROCESS/PRIV=(world,bypass) However, on PCVMS, you would issue the following command: SET PRIV=(world,bypass) While this seems like a small inconvience, it is indicative of the problem of consistency that PCVMS suffers from the most. On VMS, all commands that relate to the same basic concept are grouped as QUALIFIERS of that concept. Per our previous example, every action which might affect your current process status are qualifiers of the SET PROCESS command. These qualifiers, such as /PRIV, /NAME, etc., are then appended to the end of the command. In PCVMS, Wendin chose to group these commands into the larger arena of qualifiers that are not related to a concept. This looses the advantage of logical thinking. In other words, if you had wanted to change your username in VMS and you didn't know what specific command would perform the task, you would normally only need to think about what concept you are dealing with (PROCESS) and then try some qualifiers or even request on-line help. With PCVMS, this process is practically useless. The help file supplied with PCVMS might be useful to some users; I deleted it from my disk for extra disk space after I found it not really useful. Even though the outcome of the commands in PCVMS may accomplish the same end result, it is very bothersome to try and get used to the different syntax, especially considering it is supposed to be a VMS-type system. I suppose the emphasis is on the word "type," however it seems that much more thought could have been put into the structure of these commands in PCVMS. PCVMS is invoked from the DOS command line. It took about 20 seconds to initialize and load itself on my hard disk system. Once the system is up and running, you are prompted for a user name (much like the VMS LOGIN command). In most instances, you can just enter the username "SYSTEM" and continue in PCVMS. If you have set up a user authorization file (UAF), you can define passwords and user names which must be validated at "login" time. An AUTHORIZE program is provided by Wendin to aid in the process of creating these user records. The AUTHORIZE program wasn't even mentioned in the documentation I read, except to note that the user is welcome to create one. Perhaps a disgruntled user of PCVMS found time to write a rudimentary version of AUTHORIZE, because it certainly appears as though it is a near-useless program. The real AUTHORIZE program on VMS is used to create and track user accounting information. It maintains a UAF file which is used by LOGIN. The similiar sequence of events is used with PCVMS, however the UAF file supplied and created with PCVMS barely contains enough information to really consider it useful. The PCVMS AUTHORIZE uses an very ugly scroll-redraw method to clear the screen between commands, and is menu driven. The reason why the scroll-redraw method is used is beyond me, except that maybe someone wanted some form of device independence. Once inside PCVMS, you are prompted with the standard VMS DCL prompt. You can then issue commands until you wish to logout or leave the PCVMS system. To logoff, you simply issue the command LOGOFF. This stops your current job, all sub-processes, and all batch jobs (apparently), and leaves you at the LOGIN prompt. To leave PCVMS and return to DOS, you must issue the SHUTDOWN command. This command basically stops everything and returns you to DOS. Both the SHUTDOWN command and the initialization process are customizable through certain files. As distributed, they work without change. The Command Line Interpreter (CLI, as it would be called on VMS) provides a fairly primitive ability to read commands. This is as expected, however it still leaves one thinking that DCL would be useful. DCL is an acronymn for Digital's Command Language. On VMS, it's really a CLI that passes anything it doesn't recognize off to VMS for possible execution. There are about 30 or so major DCL commands, the rest being programs. DCL is very similar in concept to UNIX's shell and cshell. I missed having DCL around, since it often provides the mechanism for fixing missing features of VMS, however I agree that it would be a significant task to write such a program for the PC. Faced with such a task, I could easily be persuaded to work without it. Commands are similar to the ones used on VMS, the major difference being syntax and verbosity. VMS is the hackers nightmare. Some VMS system calls can be as long as 22 characters. Commands can regularily get so long that a 132 column screen is useful. This has advantages and disadvantages. The advantage is that you can remember the commands easily. The disadantage is that if you make a mistake, retyping the line is painful. On later versions of VMS (4.x), DEC provided the ability to edit commands and recall past commands. This is really more a necessity than luxury for VMS, and it becomes painfully evident that PCVMS suffers from the same problem. There is no method of editing past commands (short of some memory-resident program). Command qualifiers on PCVMS are also a source of frustration. Before each qualifier you type in PCVMS, you must place a space (" "). While this is an optional action on VMS, it is a required action for PCVMS; one which can be particularily frustrating. This is the result of having such a primitive command line parser. For example, the VMS command: DIR/EXCLUDE=*.dat/FULL b:[diskfiles] as opposed to the same command on PCVMS: DIR /EXCLUDE=*.dat /FULL b:\diskfiles PCVMS offers logicals for easy identification of files, however the logical capability is very weak. PCVMS comes with several logicals predefined. Now, it may appear that I have have a vendetta against PCVMS, however it is important to recognize the shortfalls of any program. PCVMS does have several good points, though. PCVMS provides the ability to submit certain jobs to the "batch" stream. The batch stream being a pseudo-job that is executed concurrently with the other jobs on the system. The batch facility didn't work really well for me, however it is there if you are really desperate. The ability to have more than one user on a PC is also a strong point of PCVMS. The typical PC can't support much else besides one user, however PCVMS offers the ability to have two more users run from the COM ports of your equipment. The maximum usable speed is about 1200 baud, and even then characters are sometimes lost, however it is a real plus that PCVMS can handle more than one user. Note that file locking is NOT provided by PCVMS, so even though PCVMS can support more than one user, it cannot coordinate file conflicts caused by having more than one user. PCVMS is great for organizing your PC for multiple person use. If you wanted to set up a "public" PC for use in an office, say, you could use PCVMS to make sure that only certain people have access to the machine. You can also partition off areas for each user; thus keeping things simple for users. Privileges are provided, if you can justify a use for them on a single user system. Account information is kept in the UAF and administered by LOGIN. No method of creating account quotas exists in PCVMS. PCVMS is sometimes slow about responding, however it ususally appears to be giving the processor a good run for it's money. A fast, fast PC XT might make very good use of PCVMS's features, however I believe it's more useful as an example of using the Operating System Toolbox. Source code is provided for both PCVMS and PCUNIX, so you may see what goes into creating such an operating system. This source code, in conjunction with the OST can provide a programmer with lots of time-absorbing activity. Where PCVMS suffers from being a quality product, the OST excels in being a really useful buy. The OST is roughly nine basic modules that are used to create an operating system. The dried-and-hard VMS hack will recognize that about 3/4 of the OST systems calls are name (and often parameter) identical to the VMS equivalent. They don't always perform the exact same function, however it is a much closer relationship with VMS than PCVMS. The OST makes some interesting compromises with the system calls for VMS, and often those compromises are wise. I would prefer to refer you to the actual documentation for information (mainly because it is a big subject). Suffice to say that the OST routines were well thought out and should provide more than enough capability for even the most demanding programmer. The OST is the real buy, in my opinion. It comes in two forms. One, a C version, and the second a PASCAL version. Using the C version, I attempted to create a more usable LOGIN program (better security), however I never found enough time to finish it. While developing the program, though, I found the modules fairly easy to deal with. The manual for the OST could use more cross-references, or at least better organization, however the information you would be looking for IS there. In summary, I feel that both products are probably worth purchasing. The OST would be my first choice, however PCVMS and PCUNIX provide very nifty views of operating system design. The fact that Wendin managed to create the OST well enough to throw together PCVMS and PCUNIX makes a big impression on me. When they first came out, PCVMS and PCUNIX were both selling for $49.00 with the OST selling at $99.00. While the prices for the operating systems have doubled, the OST remains the best value at $99.00. If Wendin would return the operating systems to their original prices, I wouldn't hesitate to suggest that you invest in one or the other. If you are interested in getting serious work done with PCVMS, I would suggest that you look into something else. If you are interested in how operating systems work (or interested in doing PCVMS *RIGHT*), I would suggest you invest in the OST. Both are interesting products, and Wendin really does provide one of the better bangs-for-the-buck that I've seen. Wendin claims that the only thing they DON'T provide with the OST is a creative imagination. If you have one of those, the OST could really be a great combination. [1] Wendin, Box 266, Cheney, WA. 99004 (509) 235-8088. PCVMS and PCUNIX are registered trademarks of Wendin Incorporated. [2] DEC, VAX, and VMS are registered trademarks of Digital Equipment Corporation. [3] UNIX is a registered trademark of AT&T Bell Laboratories. Copyright (c) Bruce A. Bergman 1986. All rights reserved. Any or all parts of this document may be reproduced, except for profit, without permission of the author, providing this copyright notice and credit appear intact with the document and reproduction. All views expressed herein are entirely that of the author and not the views of any other party or organization. -- bang!- allegra!\ \ crash! \ gould9!--\ ihnp4! \ \ >--sdcsvax!---->--telesoft!bruceb (Bruce Bergman N7HAW) noscvax! / / scgvaxd! / sdencore!--/ ucbvax! / / talaris!-