... I remember trying to help customers move > their > >> applications from > >> TOPS-20 to VMS, back in the early 1980s, and > finding > >> that the VMS I/O > >> capabilities were really badly lacking. > >> > > > > Funny how that works: when you're not familiar > with something, you often mistake your own ignorance > for actual deficiencies. Of course, the TOPS-20 > crowd was extremely unhappy at being forced to > migrate at all, and this hardly improved their > perception of the situation. > > > > If you'd like to provide specifics about exactly > what was supposedly lacking, it would be possible to > evaluate the accuracy of your recollection. > > > > I've played this game before, and it's off-topic and > too much work to be > worth it.
In other words, you've got nothing, but you'd like people to believe it's something. The phrase "Put up or shut up" comes to mind. Researching exactly when specific features > were released into > VMS RMS from this distance would be a total pain, I wasn't asking for anything like that: I was simply asking for specific examples of the "VMS I/O capabilities" that you allegedly 'found' "were really badly lacking" "in the early 1980s". Even if the porting efforts you were involved in predated the pivotal cancellation of Jupiter in 1983, that was still close enough to the VMS cluster release that most VMS development effort had turned in that direction (i.e., the single-system VMS I/O subsystem had pretty well reached maturity), so there won't be any need to quibble about what shipped when. Surely if you had a sufficiently strong recollection to be willing to make such a definitive assertion you can remember *something* specific. and > then we'd argue > about which ones were beneficial for which > situations, which people > didin't much agree about then or since. No, no, no: you're reading far more generality into this than I ever suggested. I'm not asking you to judge what was useful, and I couldn't care less whether you thought the features that VMS had and TOPS lacked were valuable: I'm just asking you to be specific about what "VMS I/O capabilities" you claim were seriously deficient. My > experience at the time was > that RMS was another layer of abstraction and > performance loss between > the application and the OS, Ah - your 'experience'. So you actually measured RMS's effect on performance, rather than just SWAGged that adding a layer that you found unappealing in a product that your customers were angry about having to move to Must Be A Bad Idea? What was the quantitative result of that measurement, and how was RMS configured for the relevant workload? After all, the extra layer wasn't introduced just to give you something to complain about: it was there to provide additional features and configuration flexibility (much of it performance-related), as described above. If you didn't take advantage of those facilities, that could be a legitimate *complexity* knock against the environment but it's not a legitimate *capability* or *performance* knock (rather the opposite, in fact). and it made it harder to > do things If you were using the RMS API itself rather than accessing RMS through a higher-level language that provided simple I/O handling for simple I/O needs, that was undoubtedly the case: as I observed above, that's a price that VMS was happy to pay for providing complete control to applications that wanted it. RMS was designed from the start to provide that alternative with the understanding that access via higher-level language mechanisms would usually be used by those people who didn't need the low-level control that the native RMS API provided. and it > made them slower That's the second time you've claimed that, so you'll really at least have to describe *how* you measured this even if the detailed results of those measurements may be lost in the mists of time. and it made files less > interchangeable between > applications; That would have been some trick, given that RMS supported pure byte-stream files as well as its many more structured types (and I'm pretty sure that the C run-time system took this approach, using RMS direct I/O and doing its own deblocking to ensure that some of the more idiomatic C activities like single-character reads and writes would not inadvertently perform poorly). So at worst you could have used precisely the same in-file formats that were being used in the TOPS-20 environment and achieved the same degree of portability (unless you were actually encountering peculiarities in language access rather than in RMS itself: I'm considerably less familiar with that end of the environment). but I'm not interested in trying to > defend this position > for weeks based on 25-year-old memories. So far you don't really have much of a position to defend at all: rather, you sound like a lot of the disgruntled TOPS users of that era. Not that they didn't have good reasons to feel disgruntled - but they frequently weren't very careful about aiming their ire accurately. Given that RMS really was *capable* of coming very close to the performance capabilities of the underlying hardware, your allegations just don't ring true. Not being able to jump into VMS with little preparation and get the same performance you were used to in the TOPS-20 environment is quite believable, but not the suggestion that it was not *possible* to achieve at least equal performance had you been well-versed in the VMS environment. Decent *default* behavior is one of the things that VMS should have learned more from Unix about - especially as the years went by and decreasing memory prices made use of a central system file cache (which IIRC VMS didn't acquire until the late '80s) much more feasible (even in relatively low-end systems) than was the case in the '70s when VMS was designed. RMS's default application buffer size of 8 KB didn't get increased for another decade or more after that: sure, you could increase that size explicitly, and use multiple larger buffers, and even stream data through them using transparent asynchronous multi-buffering, but the *default* became ridiculous. So it seems a lot more likely to me that you got bitten by default behavior tuned for small-system environments than by actual hard limitations - which was my initial observation to your original post. - bill This message posted from opensolaris.org _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss