Re: Fw: FENRIS (nwfs) Source Code Now Available.

Jeff Merkey (jmerkey@timpanogas.com)
Wed, 23 Jun 1999 10:02:48 -0600


Felix,

We do have utilities that make Netware file systems and fsck them on linux.
They will be posted mid-July. They need a lot of cleanup yet and code
reviewing. The fsck utility more so than the nwdisk utlitity for creating
file systems. This project will probably have all the pieces pulled
together by fall and finalized for all Linux versions. We are hoping
mid-summer, but looking at all the work and testing, it's going to go on for
awhile.

There are several excellent books on the NT file system, Some better titles
are,

Inside Windows NT, Second Edition, David Solomon
Windows NT File System Internals, Rajeev Nagar

And the best source is the Windows NT IFS Kit and the sources. Be prepared
to delve into structured exception handling, NT FS's are heavily dependent
on it. The unwind cases for handling raised exceptions are mind numbing, be
warned.

Jeff

----- Original Message -----
From: <leitner@convergence.de>
To: <jmerkey@timpanogas.com>
Sent: Wednesday, June 23, 1999 9:45 AM
Subject: Re: Fw: FENRIS (nwfs) Source Code Now Available.

> In local.linux-kernel, you wrote:
> > It mounts Netware partitions.
>
> Oh.
> Do you also provide tools to fsck and make such file systems?
>
> > Also, Windows NT has some pretty nifty stuff in it's file system
> > architecture for SMP.
>
> I use SMP, and NT was orders of magnitude slower accessing files than
> Linux was.
>
> > The way the VM Cache manager is implemented in Windows NT is nothing
> > short of genius.
>
> That does not mean that there cannot be parts of NT which we can
> salvage. Where did you get your knowledge about how NT does this? I
> have searched about 10 OS books (and I even searched the index of
> several Microsoft Press books) and found almost nothing about NT
> internals.
>
> > By caching MCB allocation run information (NT reads and writes files
> > by constructing MCB lists in memory, which are in-memory descriptors
> > of a file's contiguous sector runs), this gives NT the ability to
> > perform some fairly sophisticated read-ahead and cache predication
> > operations for random access as well as sequential access files.
>
> I would be happy to learn what kind of optimizations they do!
> If there is any publicly available documentation that you can point me
> to, please do so!
>
> > MCB lists can basically be sent in a parallel fashion to the IO
> > subsystem and transacted in parallel.
>
> You mean scatter-gather? Linux does that for quite a while now.
> And I can hardly believe that NT does not have semaphores to protect
> their I/O drivers and serialize the I/O stuff. There is not much to be
> gained by manipulating I/O requests in parallel, since the bulk of the
> time will be spent waiting for the hardware, not manipulating data
> structures.
>
> > For Async IO (Linux only provides Sync IO for File Systems, NT
> > provides Sync and Async IO) which is what SQL Server on NT uses, this
> > method increases SMP scalability for Databases many fold over Sync IO
> > File System models (like Linux).
>
> I thought that Linux does only async IO and that causes databases to
> have difficulties without a raw device... Or am I misunderstanding you
> here? And phhttpd does the other kind of async file I/O under Linux?
>
> Felix
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/