Problem to save file on the hard disk! What I have to set to do it ?
Thomas Doerfler (nt)
Thomas.Doerfler at imd-systems.de
Tue Mar 14 19:20:54 UTC 2006
Chris,
the code to read the partition table and make minor devices for each
feasible partition is in /rtems/cpukit/libblock/src/ide_part_table.c
It has a table of known partition types, and 0x0b aswell as 0x0c is
present there. A non-FAT partition type will not be accepted.
When these minor devices are present, the "rtems_fsmount" function will
try to mount them, the actual evaluation of the partitions boot sector
is performed in /rtems/cpukit/libfs/src/dosfs/msdos_initsupp.c.
There, the data present in the boot sector is checked, and if anything
is wrong there, the mount will fail. At that stange, the code also
determines, whether this is a FAT16, a FAT12 or a FAT32 filesystem.
wkr,
Thomas.
Chris Caudle schrieb:
> Where is the code to mount disk filesystems? I'm browsing around and
> can't figure out which is the relevant file.
>
> On Tue, March 14, 2006 7:56 am, Matteo wrote:
>
>>- one is hda2, is for " windows xp " and is FAT32(is about 20GB),
>>- another one is hda1, is a free memory FAT16(is about 2.8 GB).
>
>
> The partition table you presented shows hda1 as linux native filesystem
> (type 0x83), so perhaps the RTEMS code to mount does not accept it as a
> FAT filesystem. Typically a FAT16 filesystem would be type 0x4 or 0x6.
>
> Something similiar may apply to hda2. FAT32 with cylinder/head/sector
> addressing is type 0xB, and for some reason FAT32 with LBA addressing is
> type 0xC. I do not know the details of why there is a distinction, I
> would expect that on disk structures should be the same no matter how the
> filesystem was addressed, but perhaps there are block addresses stored in
> the FAT somehow which vary based on addressing scheme.
> If that is the case (speculation here), perhaps the RTEMS code knows how
> to mount type 0xB but not 0xC.
>
> I admit I am just grasping at this point, as I pointed out above I have
> not found the mounting code yet to verify.
>
>
>>>>>Dispositivo Boot Start End Blocks Id System
>>>>>/dev/hda1 2678 3014 2706952+ 83 Linux
>>>>>/dev/hda2 1 2677 21502971 c W95 FAT32
>>>
>>>(LBA)
>>>
>>>>>/dev/hda3 3015 4784 14217525 83 Linux
>>>>>/dev/hda4 4785 4864 642600 5 Esteso
>>>>>/dev/hda5 4785 4864 642568+ 82 Linux swap /
>
>
> -- Chris Caudle
>
--
--------------------------------------------
IMD Ingenieurbuero fuer Microcomputertechnik
Thomas Doerfler Herbststrasse 8
D-82178 Puchheim Germany
email: Thomas.Doerfler at imd-systems.de
PGP public key available at:
http://www.imd-systems.de/pgpkey_en.html
More information about the users
mailing list