Yeah, I'm interested. Can you write up what changes the linux port entailed???
-Mike
At 07:10 PM 2/20/99 +0100, g4klx(a)g4klx.demon.co.uk wrote:
Hello All
A couple of weeks ago I hacked the program v7 from the bostic_tools to
work under all sorts of different Unix versions. It worked great and
allowed me to snoop around the V7 file system images from native Linux.
Anyone who wants a copy can send me an e-mail.
Anyway I had a few hours spare today, and decided to try adding the V7
filesystem to the Linux kernel. Results so far are encouraging:
g4klx:/usr/src/linux# ls -l /mnt
total 333
drwxrwxrwx 7 root root 224 Sep 22 1988 .
drwxr-xr-x 19 root root 1024 Feb 14 11:55 ..
drwxrwxr-x 2 3 3 2512 Sep 22 1988 bin
-rwxr-xr-x 1 3 3 8986 Jun 8 1979 boot
drwxrwxr-x 2 3 3 160 Sep 22 1988 dev
drwxrwxr-x 2 3 3 336 Sep 22 1988 etc
-rwxr-xr-x 1 daemon daemon 53302 Jun 8 1979 hphtunix
-rwxr-xr-x 1 daemon daemon 52850 Jun 8 1979 hptmunix
drwxrwxr-x 2 3 3 192 Sep 22 1988 lib
drwxrwxr-x 2 root lp 96 Sep 22 1988 mdec
-rwxr-xr-x 1 root daemon 50990 Jun 8 1979 rkunix
-rwxr-xr-x 1 root daemon 51982 Jun 8 1979 rl2unix
-rwxr-xr-x 1 daemon daemon 51790 Jun 8 1979 rphtunix
-rwxr-xr-x 1 daemon daemon 51274 Jun 8 1979 rptmunix
g4klx:/usr/src/linux# df
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/hda1 3031184 1920771 953665 67% /
/dev/loop0 1919 1877 42 98% /mnt
g4klx:/usr/src/linux#
I am using the loop block device to allow me to mount a file as a block
device, this saves me having to add a new partition to my disc. There
should be no reason why it won't work with a true disc partition. The V7
filesystem under Linux is read/write.
Anyone interested ?
Jonathan
Received: (from major@localhost)
by minnie.cs.adfa.edu.au (8.9.1/8.9.1) id NAA02555
for pups-liszt; Sun, 21 Feb 1999 13:29:44 +1100 (EST)
From Warren Toomey <wkt(a)henry.cs.adfa.edu.au> Sun
Feb 21 12:29:29 1999
Received: from henry.cs.adfa.edu.au (henry.cs.adfa.edu.au
[131.236.21.158])
by minnie.cs.adfa.edu.au (8.9.1/8.9.1) with ESMTP id NAA02549
for <pups(a)minnie.cs.adfa.edu.au>; Sun, 21 Feb 1999 13:29:37 +1100 (EST)
Received: (from wkt@localhost)
by henry.cs.adfa.edu.au (8.9.1/8.9.1) id NAA08687;
Sun, 21 Feb 1999 13:29:29 +1100 (EST)
(envelope-from wkt)
From: Warren Toomey <wkt(a)henry.cs.adfa.edu.au>
Message-Id: <199902210229.NAA08687(a)henry.cs.adfa.edu.au>
Subject: Re: V7 filesystem work
In-Reply-To: <Pine.LNX.4.05.9902201906360.1385-100000(a)g4klx.agri.ch> from Jonathan
Naylor at "Feb 20, 1999 7:10:45 pm"
To: g4klx(a)g4klx.demon.co.uk
Date: Sun, 21 Feb 1999 13:29:29 +1100 (EST)
Cc: pups(a)minnie.cs.adfa.edu.au
Reply-To: wkt(a)cs.adfa.edu.au
X-Mailer: ELM [version 2.4ME+ PL43 (25)]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Sender: owner-pups(a)minnie.cs.adfa.edu.au
Precedence: bulk
In article by Jonathan Naylor:
Hello All
A couple of weeks ago I hacked the program v7 from the bostic_tools to
work under all sorts of different Unix versions. It worked great and
allowed me to snoop around the V7 file system images from native Linux.
Anyone who wants a copy can send me an e-mail.
Anyway I had a few hours spare today, and decided to try adding the V7
filesystem to the Linux kernel. Results so far are encouraging:
I am using the loop block device to allow me to mount
a file as a block
device, this saves me having to add a new partition to my disc. There
should be no reason why it won't work with a true disc partition. The V7
filesystem under Linux is read/write.
Anyone interested ?
I'd be happy to add any changes etc. into the Tools directory in the PUPS
Archive.
It's about time Unix could read the Unix filesystem again :-)
Ciao,
Warren
Received: (from major@localhost)
by minnie.cs.adfa.edu.au (8.9.1/8.9.1) id UAA05201
for pups-liszt; Sun, 21 Feb 1999 20:23:41 +1100 (EST)
From Jonathan Naylor <g4klx(a)pop.agri.ch> Sun Feb
21 19:07:50 1999
Received: from biene.agri.ch (biene.agri.ch [212.28.128.41])
by minnie.cs.adfa.edu.au (8.9.1/8.9.1) with ESMTP id UAA05195
for <pups(a)minnie.cs.adfa.edu.au>; Sun, 21 Feb 1999 20:23:21 +1100 (EST)
X-Internal-ID: 36B8327D0006E80C
Received: from g4klx.agri.ch (212.28.159.135) by biene.agri.ch (NPlex 2.0.119); Sun, 21
Feb 1999 10:23:16 +0100
Received: from localhost (g4klx@localhost)
by g4klx.agri.ch (8.8.8/8.8.8) with ESMTP id KAA00455;
Sun, 21 Feb 1999 10:07:51 +0100
X-Authentication-Warning: g4klx.agri.ch: g4klx owned process doing -bs
Date: Sun, 21 Feb 1999 10:07:50 +0100 (CET)
From: Jonathan Naylor <g4klx(a)pop.agri.ch>
X-Sender: g4klx(a)g4klx.agri.ch
Reply-To: g4klx(a)g4klx.demon.co.uk
To: Mike Allison <mallison(a)konnections.com>
cc: pups(a)minnie.cs.adfa.edu.au
Subject: Re: V7 filesystem work
In-Reply-To: <199902210203.TAA18682(a)mail.konnections.com>
Message-ID: <Pine.LNX.4.05.9902210957580.303-100000(a)g4klx.agri.ch>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-pups(a)minnie.cs.adfa.edu.au
Precedence: bulk
Hello Mike and the list
On Sat, 20 Feb 1999, Mike Allison wrote:
Yeah, I'm interested. Can you write up what
changes the linux port entailed???
-Mike
I assume you mean the standalone V7 FS program rather than the kernel V7
FS support ?
The code was written in old C, and from a modern C programmers point of
view, rather sloppily. The warnings from the compiler were terrible, so I
added function prototypes, and made the code more ANSI C like. Then I got
rid of a few bugs, in one place I remember a character pointer being
assigned to a character.
I then typedef'd the data types so I could use int8, int16 and int32 in
the code to make it more portable. I stopped using structure overlays onto
the raw data as that is messy and is not good for (a) byte ordering and
(b) structure packing. It also allowed me to stop using the original V7
file headers which would have made a public release of the code
problematic.
The data is extracted from the raw block data by using special
architecturally neutral functions into locally held structures. That is a
particular win with the block number in three bytes trick that is used in
the inode.
It has been tested on i386/Linux with both glibc 1.0 and glibc 2.0 and
Alpha/Linux, no changes were needed.
Then I added a few new commands to let me look at the superblock and
bootblocks and a few other bits.
Then I released it.
I have just sent a copy of the program to Warren for inclusion in the PUPS
tools section. Its not very big.
Work is progressing on the V7 filesystem in the Linux kernel. Anyone who
wants the patches for that should send me an e-mail. I hope to get it into
the mainstream kernel in the Linux 2.3 series.
Jonathan