Subject: Re: PostgreSQL
To: Steven M. Bellovin <smb@cs.columbia.edu>
From: Johnny Billquist <bqt@update.uu.se>
List: tech-net
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