On Sat, Sep 13, 2014 at 1:43 PM, Richard Hipp <d...@sqlite.org> wrote:
> Decades ago, files came in all kinds of varieties and permutations. > Details varied from one OS to the next. But it was common to have a > distinction between text files and binary files (with different APIs for > accessing each.) It was also common to have a difference between "ordinary > files" (that had to be read sequentially from beginning to end) and > "random-access files", which supported operations similar to lseek(). > (Once again, completely incompatible APIs existed for accessing each file > type.) With binary files, one often had to specify a "block size" which > was the increment in which the file was read and written. The block size > was typically a property of the file and could not be changed after the > file had been created. There were often restrictions on the permitted > values for block sizes. And you couldn't ask the operating system to tell > you whether a file was text or binary or sequential or random-access or > what its block-size was; you just had to know. And bewildering problems > resulted if you got it wrong. > > Then the boys at Bell Labs had the idea of "lets make every file be a > sequence of bytes of arbitrary length". Many observers scoffed and told > them that you had to have all kinds of different types of files with > different APIs for "efficiency". But in the end, the Unix Filesystem was > proven to be a Very Good Idea, and has become the norm ever sense. > > You youngsters really have concept of the chaos and nonsense we programmers > had to put up with prior to the invention of the Unix Filesystem, do you? > And this was not true just of big expensive business class machines. At the very least (and I suspect more) Commodore 8-bit DOS (which was embedded within a smart drive with its very own dedicated CPU & RAM) supported (essentially) sequential byte stream files (no random seeking for these!) and random access record oriented files (where the record size was set at file creation time). Man were those a pain in the backside to use. -- Scott Robison _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users