POV-Ray : Newsgroups : povray.off-topic : A retro moment Server Time
29 Jul 2024 22:26:22 EDT (-0400)
  A retro moment (Message 11 to 20 of 50)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Invisible
Subject: Re: A retro moment
Date: 7 Jun 2011 10:08:08
Message: <4dee30c8@news.povray.org>
On 07/06/2011 02:45 PM, Darren New wrote:
> On 6/7/2011 3:58, Invisible wrote:
>> Quite why Windows can't just write the final listing to the directory
>> block
>> and then write all the file data blocks sequentially is beyond me, but
>> anyway...
>
> Read up on how FAT works. It's not seeking back to write the directory
> listing. It's seeking back to read/write the FAT table.

OK. So it's called a file allocation table rather than a directory 
listing. Same difference.

> Didn't you just say that security updates can be done without breaking
> things? Yet here you are, amazed that a Win3 program runs under XP. ;-)

Why would a security update break a program that only reads and writes 
text files and accesses the serial port?


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 10:35:19
Message: <4dee3727@news.povray.org>
On 6/7/2011 7:04, Invisible wrote:
> On 07/06/2011 02:47 PM, Darren New wrote:
>> On 6/7/2011 5:00, Invisible wrote:
>>> Still, why it can't build an image of what the final disk layout will
>>> look
>>> like in RAM and then write it all to disk in the most efficient order, I
>>> don't know. That's how I would probably do it.
>>
>> It's a removable disk.
>
> And?

And it has to be not completely corrupted if you remove it?

> Because it's a trivially easy optimisation?

Not really.  What happens if you have multiple processes writing to the disk 
at the same time?  You're looking at one specific use case, and complaining 
that the general tool isn't optimized for that use case.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 10:35:52
Message: <4dee3748@news.povray.org>
On 6/7/2011 7:05, Invisible wrote:
> OK. So do it in the opposite order. Write the directory entry last, after
> all the files have been written.

It's not the directory entry. It's the file allocation table.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 10:37:02
Message: <4dee378e@news.povray.org>
On 6/7/2011 7:08, Invisible wrote:
> OK. So it's called a file allocation table rather than a directory listing.
> Same difference.

Um, no. These are two entirely different things.

> Why would a security update break a program that only reads and writes text
> files and accesses the serial port?

Because the serial port is hardware that many programs accessed without 
going through the operating system to do so.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

From: Invisible
Subject: Re: A retro moment
Date: 7 Jun 2011 10:49:41
Message: <4dee3a85@news.povray.org>
>> Because it's a trivially easy optimisation?
>
> Not really. What happens if you have multiple processes writing to the
> disk at the same time? You're looking at one specific use case, and
> complaining that the general tool isn't optimized for that use case.

You know, the rest of the filesystem is cached too, and that doesn't 
seem to cause any problems...


Post a reply to this message

From: Invisible
Subject: Re: A retro moment
Date: 7 Jun 2011 10:50:56
Message: <4dee3ad0$1@news.povray.org>
On 07/06/2011 03:36 PM, Darren New wrote:
> On 6/7/2011 7:08, Invisible wrote:
>> OK. So it's called a file allocation table rather than a directory
>> listing. Same difference.
>
> Um, no. These are two entirely different things.

In what way?

>> Why would a security update break a program that only reads and writes
>> text files and accesses the serial port?
>
> Because the serial port is hardware that many programs accessed without
> going through the operating system to do so.

Ah, now *that* I would expect to fail, yes. And, indeed, one of our 
other programs *does* fail on Windows XP because it actually tries to 
overwrite SERIAL.SYS with its own customised version...


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 10:58:45
Message: <4dee3ca5$1@news.povray.org>
On 6/7/2011 7:49, Invisible wrote:
> You know, the rest of the filesystem is cached too,

Not on a removable floppy drive.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

From: Le Forgeron
Subject: Re: A retro moment
Date: 7 Jun 2011 11:02:06
Message: <4dee3d6e$1@news.povray.org>
Le 07/06/2011 16:50, Invisible a écrit :
> On 07/06/2011 03:36 PM, Darren New wrote:
>> On 6/7/2011 7:08, Invisible wrote:
>>> OK. So it's called a file allocation table rather than a directory
>>> listing. Same difference.
>>
>> Um, no. These are two entirely different things.
> 
> In what way?

The File allocation table is a MAP of sectors (which ones are free,
which ones are busy). When writing a file, not in that order:
 * allocate sectors for the file content
 * file the sectors with file content
 * update the sector of the directory content to have "name-->sector/id"
 * update the FAT.

Notice that until you update the FAT, you cannot have a concurrent
allocation for another file.
(also, the update of directory might need a new sector)



-- 
Software is like dirt - it costs time and money to change it and move it
around.

Just because you can't see it, it doesn't weigh anything,
and you can't drill a hole in it and stick a rivet into it doesn't mean
it's free.


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 11:02:36
Message: <4dee3d8c$1@news.povray.org>
On 6/7/2011 7:50, Invisible wrote:
> On 07/06/2011 03:36 PM, Darren New wrote:
>> On 6/7/2011 7:08, Invisible wrote:
>>> OK. So it's called a file allocation table rather than a directory
>>> listing. Same difference.
>>
>> Um, no. These are two entirely different things.
>
> In what way?

http://en.wikipedia.org/wiki/FAT_file_system#Design

In the same way that a linked list is an entirely different thing from a 
hashtable.

> Ah, now *that* I would expect to fail, yes. And, indeed, one of our other
> programs *does* fail on Windows XP because it actually tries to overwrite
> SERIAL.SYS with its own customised version...

That's another example.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

From: Darren New
Subject: Re: A retro moment
Date: 7 Jun 2011 11:25:49
Message: <4dee42fd$1@news.povray.org>
On 6/7/2011 8:02, Le_Forgeron wrote:
> The File allocation table is a MAP of sectors (which ones are free,
> which ones are busy).

Actually, it's not only that but also what granules are allocated to what 
file in what order.  It's not just a free-space bitmap, but an actual 
collection of linked lists.

-- 
Darren New, San Diego CA, USA (PST)
   "Coding without comments is like
    driving without turn signals."


Post a reply to this message

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.