mmap & LARGEFILE

mmap & LARGEFILE

Post by Girish Daje » Thu, 02 Aug 2001 02:41:03



We currently run on Solaris 2.6 & have an application using memory mapped
file. We need to go beyond the 2GB limit on the memory mapped file.

Can this be done on Solaris 2.6? If yes, how?

Can this be done on Solaris 7/8? If yes, how?

Thanks for the help in advance.

Girish

 
 
 

mmap & LARGEFILE

Post by Casper H.S. Dik - Network Security Engine » Sat, 04 Aug 2001 18:53:41


[[ PLEASE DON'T SEND ME EMAIL COPIES OF POSTINGS ]]


>We currently run on Solaris 2.6 & have an application using memory mapped
>file. We need to go beyond the 2GB limit on the memory mapped file.
>Can this be done on Solaris 2.6? If yes, how?

You can mmap() portions of files >= 2GB.  You cannot mmap() bits larger
than 2GB (perhaps the limit is somewhere between 2-4GB, as long as you
have a whole sufficiently large in your address space)

More than 4GB will certainly not fit in a 32 bit process address space.

Quote:>Can this be done on Solaris 7/8? If yes, how?

Easily in 64 bit processes.

Casper
--
Expressed in this posting are my opinions.  They are in no way related
to opinions held by my employer, Sun Microsystems.
Statements on Sun products included here are not gospel and may
be fiction rather than truth.

 
 
 

1. Largefiles, Oracle, Veritas, Solaris & D1000

Sol8 (07/01), E420 + 2 x D1000, Veritas Volume Manager 3.1, Veritras File
System, Oracle 8.1.6.1 (64 bit).

O/S is 64 bit (confirmed).

The above situation has 2 D1000s with 8 drives in each (5x36G, 3x18G).  2nd
D1000 mirrors the 1st.  2 x 36 Gb striped for /u04 (500 Mb) and /u10 (53500 Mb),
2 x 36 Gb striped for /u11 (54000Mb), 1 x 36 Gb hotspare, the 3 x 18 Gb drives
each /u02, /u03 and /u05  (18 Gb each) respectively.

mkfs -m /dev/vx/rdsk/datadg/u10    gives

mkfs -F vxfs -o ninode=unlimited, bsize=8192, version=4, inosize=256,
logsize=128 largefiles /dev/vx/rdsk/datadg/u10 141019776

mkfs -m /dev/vx/rdsk/datadg/u11    gives

mkfs -F vxfs -o ninode=unlimited, bsize=8192, version=4, inosize=256,
logsize=128 largefiles /dev/vx/rdsk/datadg/u11 142248576

/etc/vfstab includes

/dev/vx/dsk/datadg/u10  /dev/vx/rdsk/datadg/u10  /u10 vxfs 2 yes
convosync=direct,mincache=direct,largefiles
/dev/vx/dsk/datadg/u10  /dev/vx/rdsk/datadg/u10  /u10 vxfs 2 yes
convosync=direct,mincache=direct,largefiles

Ostensibly then, both /u10 and /u11 have largefiles "turned on".  However, when
our oracle DBA tried to create a 50Gb file ('cos he doesn;t want to conficure it
with 25x2Gb files!) he gets a warning about file size too large and that it is
limited to 2Gb!

Anybody any ideas what we've done wrong?

Incidentally, a "sister" box (E220 with 1x A1000 (4x36Gb disks), hardware RAID
controlled, 2x36 Gb mirrored) has 2x36Gb disks striped (h/w raid) for /u02
200Mb, /u03 200 Mb, /u04 500 Mb, /u10 9000Mb and /u11 9000Mb.  The same DBA
(same s/w situation) can create the required files he wants (in excess of 2GB).

The differences are the h/w (2xD1000 v 1xA1000) and the RAID (s/w via VXVM and
h/w via raid controller).

Didds

2. xdm problem

3. Mmap && shm_open

4. unwanted hostname change

5. ``red-zone'' memory protection/mmap && munmap

6. Samba configuration

7. kppp in Redhat 7.2

8. Please help: shmget && mmap

9. &&&&----Looking for a unix shell------&&&&&

10. ppp && PPPoE && ADSL && net && buffer(s)

11. 没有人用中文吗?

12. mmap: using it to mmap Queue Data structure