Re: 2 gig limit and large disks
Posted in 1997
Daniel Cernotto <apsfinfx@santafe.com.ar> wrote in article
<5uv75c$86l@cssun.mathcs.emory.edu>...
> Sorry Vladislav, and excuse my ingnorance, but, where it can be a chunk
greater 2 Gigas?
Vladislav G. Gerches wrote:
> 2gigs chunk size is mandatory if you are using onmonitor tool,
> otherwise if you using onspaces tool you are able to make
> chunks of any size.
Vladislav is wrong. The 2 gb chunk limit has nothing to do with the tool
used
to define the chunk. It has to do with the way OnLine accesses raw
devices.
What happens is the offset of the page to be read is added to the offset
specified in the chunk definition. The chunk is lseeked to that point and
the
page is read. The 2gb limit is actually caused by lseek taking a signed
int as
the argument of where to seek to. Should lseek ever be "fixed" to address
a
larger offset (and an OnLine port is done on such a platform), then the 2gb
limit would be replaced by some larger value. For example, this is the
case
on 64bit o/s's where a port of OnLine exists.
Do note that you can create a chunk greater than 2gb in size, but you will
experience all sorts of problems when you try and use it, as lseek adresses
over 2gb will become negative numbers and your data will wind up in places
you did not expect ;-).
Dave