Path: utzoo!attcan!uunet!mcsun!hp4nl!sci.kun.nl!cs.kun.nl!lwj From: lwj@cs.kun.nl (Luc Rooijakkers) Newsgroups: comp.os.minix Subject: Re: Disk address size in V2.0 Message-ID: <2287@wn1.sci.kun.nl> Date: 12 Oct 90 14:24:28 GMT References: <32993@nigel.ee.udel.edu> Sender: root@sci.kun.nl Lines: 38 burgess%creek.decnet@hsdp2.brooks.af.mil (CREEK::BURGESS) writes: > I have always been a firm believer in internal consistency. If you are going >to use 4-byte address in memory, why obfuscate the method and waste the time >converting them back and forth reading them from disk? The disk addresses have to be converted anyway from/to "standard" byte order on disk, to keep the various computers compatible. With 4 byte addresses you might use BSD's ntohl()/htonl() functions, but the conversion has to be done anyway. What's the difference between unsigned long blk; unsigned char *ptr; blk =*ptr++; blk<<=8; blk|=*ptr++; blk<<=8; blk|=*ptr++; and unsigned long blk; unsigned char *ptr; blk =*ptr++; blk<<=8; blk|=*ptr++; blk<<=8; blk|=*ptr++; blk<<=8; blk|=*ptr++; except for a few cycles ? Similar code exists in V7 (I know, I've seen it). I would say that the decision has to be made solely on "small files" versus "maximal disk capacity". Why repeat the 16-bit cluster number mistake of MS-DOS with 24 bits ? Of course, we're talking about zones, and with 1K zones 2^24 is already 16G... -- Luc Rooijakkers Internet: lwj@cs.kun.nl Faculty of Mathematics and Computer Science UUCP: uunet!cs.kun.nl!lwj University of Nijmegen, the Netherlands tel. +3180652271