Subject: Re: PostgreSQL
To: Steven M. Bellovin <smb@cs.columbia.edu>
From: Johnny Billquist <bqt@update.uu.se>
List: current-users
Date: 02/02/2006 14:35:29
How could it do that? A write is a write is a write.
One write is one bus cycle. It's always aligned, and the full width of
the bus. Otherwise we're talking about the CPU doing a non-aligned
write, which is a read-modify-write.
The CPU needs to read in the last word of page N, modify a few bytes of
that word, and write it back, followed by reading the first word of page
N+1, modify a few bytes of that word, and write it back.
Johnny
Steven M. Bellovin wrote:
> In message <43E1F4DD.9020306@update.uu.se>, Johnny Billquist writes:
>
>>Um? Not entirely true.
>>You don't need locked bus cycles for atomic operations which actually
>>are atomic on the bus.
>>A write is a write is a write. It can never be split. It's atomic. Can't
>>be anything else.
>
>
> What if it's doing a write across a page boundary, and the second page
> isn't there?
>
> --Steven M. Bellovin, http://www.cs.columbia.edu/~smb
>
>
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt@update.uu.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol