Hi Jeremy, Bret, Georg, others,

> Improved support for sectors other than 512 bytes has been committed,
> I am still working on it, default support will still be for 512 bytes
> (currently not while testing).  I have tested 256, 512, 1024, and 2048
> byte sectors with tdsk (currently my only way to test).  Using max
> sector size higher than 3KB sizes corrupt memory chain during init
> (haven't tracked down yet). Constructive comments welcome.

Actually I literally constructed something related :-) I made a FAT32
filesystem with 4096 bytes per sector, then looked at 38 bytes in it,
ultimately changing 24 (two copies of 12) to make it a filesystem with
512 bytes per sector :-) I copied a small file into both versions and
dosfsck is happy with both. Also, both versions still only differ in
boot sectors and timestamps... This is hopefully good for two things:

1. as a proof that you could "mount" 4096 byte per sector filesystems
as if they were 512 byte per sector block devices with a small driver
which shows a slightly modified representation of the BPB but gives a
simple 1:1 access to everything else, for both reading and writing :-)

2. as test filesystem to evaluate the 4096 byte per sector support of
operating systems of your choice, including FreeDOS, and their drivers.

I used 4 kB per sector based on the original thread, although somebody
mentioned that 4 kB / sec harddisks are seen as a temp solution by the
industry until GPT partitioning becomes more widespread. GPT *is* nice.

While the filesystems are 2 GB in size, my zip containing the bzip2-ed
versions of both the 512 and the 4096 byte per sector variants of them,
as well as some additional text and binary files to document my tweak,
is only 17 kilobytes :-) Please contact me if you want a copy by email
from me - I try to avoid sending files directly to the mailing list.

I hope some people have interest in my test and proof of concept data!

Regards, Eric :-)

PS: I could also upload the file, if you know a nice location...



> dosfsck 3.0.9 (31 Jan 2010)
> dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN
> Checking we can access the last sector of the filesystem
> Boot sector contents:
> System ID "mkdosfs"
> Media byte 0xf8 (hard disk)
>       4096 bytes per logical sector
>      32768 bytes per cluster
>         32 reserved sectors
> First FAT starts at byte 131072 (sector 32)
>          2 FATs, 32 bit entries
>     294912 bytes per FAT (= 72 sectors)
> Root directory start at cluster 2 (arbitrary size)
> Data area starts at byte 720896 (sector 176)
>      66538 data clusters (2180317184 bytes)
> 32 sectors/track, 64 heads
>          0 hidden sectors
>     532480 sectors total
> Checking for unused clusters.
> Checking free cluster summary.
> diskimage-4096.bin: 1 files, 2/66538 clusters

> dosfsck 3.0.9 (31 Jan 2010)
> dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN
> Checking we can access the last sector of the filesystem
> Boot sector contents:
> System ID "mkdosfs"
> Media byte 0xf8 (hard disk)
>        512 bytes per logical sector
>      32768 bytes per cluster
>        256 reserved sectors
> First FAT starts at byte 131072 (sector 256)
>          2 FATs, 32 bit entries
>     294912 bytes per FAT (= 576 sectors)
> Root directory start at cluster 2 (arbitrary size)
> Data area starts at byte 720896 (sector 1408)
>      66538 data clusters (2180317184 bytes)
> 256 sectors/track, 64 heads
>          0 hidden sectors
>    4259840 sectors total
> Checking for unused clusters.
> Checking free cluster summary.
> diskimage-512.bin: 1 files, 2/66538 clusters

PS: Note that going from 32x64x??? 4096 byte sectors in
one track to 512 byte sectors gives "256 sectors/track"
which is no realistic CHS geometry. Please use LBA here.
Loadable DOS block devices have linear geom. anyway :-)



> Archive:  fat32-sector-size-demo.zip
> Zip file size: 16532 bytes, number of entries: 8
> drwxr-x---  3.0 unx        0 bx stor 12-Feb-04 13:00 fat32-sector-size-demo/
> -rw-r-----  3.0 unx     3695 tx defN 12-Jan-17 01:46 
> fat32-sector-size-demo/diskimage-4k-empty.txt
> -rw-r-----  3.0 unx     2301 bx defN 12-Feb-04 12:39 
> fat32-sector-size-demo/diskimage-512-header.bin.gz
> -rw-r-----  3.0 unx     3146 tx defN 12-Feb-04 12:43 
> fat32-sector-size-demo/diskimage-512-edit.txt
> -rw-r-----  3.0 unx   117918 bx defN 12-Feb-04 12:41 
> fat32-sector-size-demo/diskimage-512.bin.bz2
> -rw-r-----  3.0 unx     2307 bx defN 12-Feb-04 12:59 
> fat32-sector-size-demo/diskimage-4096-header.bin.gz
> -rw-r-----  3.0 unx   117926 bx defN 12-Feb-04 12:50 
> fat32-sector-size-demo/diskimage-4096.bin.bz2
> -rw-r-----  3.0 unx    19905 tx defN 12-Feb-04 12:57 
> fat32-sector-size-demo/diskimage-4k-with-file.txt
> 8 files, 267198 bytes uncompressed, 14782 bytes compressed:  94.5%


------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to