[Info-vax] Assembly languages
Johnny Billquist
bqt at softjar.se
Tue Apr 12 02:41:52 EDT 2022
On 2022-04-11 19:33, gah4 wrote:
> On Monday, April 11, 2022 at 5:51:25 AM UTC-7, Johnny Billquist wrote:
>> On 2022-04-11 13:05, Bill Gunshannon wrote:
>
> (snip)
>
>>> Actually, every file on every computer is just a string of bytes.
>>> (or you could even say bits) Any additional formatting is just
>>> overlayed on top.
>
>> That is obviously incorrect. Every disk used today is divided into
>> blocks. So that is what a file on a disk is, in the end. And that is not
>> the same as a string of bytes. The string of bytes abstraction is
>> implemented on top of this.
>> I'm surprised you don't know this.
>
> Disk files on Unix-like systems and DOS/Windows are just a string of bytes.
> Any block structure is hidden by the OS disk cache.
Well, it's not hidden by the OS disk cache in Unix. It's hidden by the
device driver framework. That's where the block and character devices is
about.
> On the other hand, tapes on Unix, and I believe DOS/Windows do have a block
> structure. In some cases, it is necessary to preserve that in order to
> properly read them. There are virtual tape formats that convert a tape of
> blocks into a stream with block marks included, and others to reverse it.
Actually, in Unix, tapes are the same story as disks. However, no sane
person ever cared to use the character device for tapes, since (as you
observe), with tapes there are additional reasons why you want to know,
and preserve block information. The character device hides this from you.
For networking, it's all carried by IP datagrams in the end, which are
blocks. TCP then implements a stream of bytes abstraction on top of that.
Johnny
More information about the Info-vax
mailing list