Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > alt.folklore.computers > #235050

Re: Old commercial UNIX in '26

From cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups alt.folklore.computers
Subject Re: Old commercial UNIX in '26
Date 2026-06-16 12:49 +0000
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <110rgoc$ldq$1@reader1.panix.com> (permalink)
References <nnd$6ea886ba$1c547b7f@9c94dd43bc13ac30> <87cxxrbyx1.fsf@atr2.ath.cx> <110q3dd$o45a$1@dont-email.me> <nnd$4682d28c$0d318bf6@b19d6313421837aa>

Show all headers | View raw


In article <nnd$4682d28c$0d318bf6@b19d6313421837aa>,
Piper McCorkle  <contact@piperswe.me> wrote:
>On Jun 15, 2026 at 18:55:25 CDT, "Lawrence D´Oliveiro" <ldo@nz.invalid> wrote:
>> “UFS” is the name for a whole family of filesystems, found among
>> proprietary Unixes and also the BSDs (where it originated).
>> 
>> All related, and yet all subtly incompatible with one another.
>
>My understanding is that UFS is a retroactive name for the File System
>introduced by the original UNIX, and every UNIX derivative just tweaked it
>without regard for compatibility. Essentially, UFS is just a generic term for
>"this UNIX-like's native filesystem which is probably a descendant of the
>original UNIX File System."

The original-original Unix filesystem on the PDP-7 was radically
different from what we know today; the way it worked was kind of
hard to explain.  It's kind of recognizable, but using it feels
odd.

After they moved to the PDP-11, they did a pretty good
filesystem that looks an awful lot like what we've got today.
However, it didn't make particularly efficient use of the disc
devices of that era, as the filesystem didn't take block
locality into account when allocating blocks on the physical
device; this meant you could have logically contiguous data
in a file that was spread across the platters so that reading
required doing lots of arm and head movement, which is slow (and
puts wear and tear on the physical components in the device).
You could get better efficiency by increasing the logical block
size used by the FS, but that made inefficient use of storage:
lots of little files wasted space.

Around the time of 4.1BSD, Kirk McKusick got interested in
addressing this, and did a new filesystem design that made two
major changes: first, it introduced a notion of locality into
the design by providing things called "cylinder groups" and
(roughly) trying to assign files to CGs so that blocks that go
into them come from regions of the device that are closer,
physically, than before.  This minimizes seek times.  The second
was to increase block sizes, but also introduce the notion of a
sub-block "fragment" for the trailing part of a file.  Blocks
can be evenly divided into fragments (the fragment size is some
power-of-two factor smaller than the block size), and a bitmap
of fragments available in a block is maintained by the
filesystem; fragments are only allocated to the last block in a
file (this reduces the need to seek; blocks are physically
contiguous on the device) while controlling fragmentation
(blocks are small enough that you're not wasting space unduly).
This filesystem became available for production use with 4.2BSD,
and so is sometimes called, "The 4.2BSD Fast File System".

FFS also went to great lengths to order write operations to the
file structures on the device so that it could tolerate a crash;
you might lose some data, but at least the filesystem would be
consistent on recovery.  The `fsck` utility could generally
repair what might have been damaged.

This was such an improvement over the earlier filesystems that
most vendors adopted it, and over time, it become referred to as
"UFS".  Of course, each vendor had to pee on it to make it smell
like their own code, so gradually implementations became
slightly mutually incompatible.  Caveat emptor.

I suppose one could describe UFS as a descendent of the original
Unix filesystem, but it was sufficiently different that I would
consider that a bit of a reach.

	- Dan C.

Back to alt.folklore.computers | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Old commercial UNIX in '26 Piper McCorkle <contact@piperswe.me> - 2026-06-15 08:27 +0200
  Re: Old commercial UNIX in '26 mechanicjay@sol.smbfc.net (Mechanicjay) - 2026-06-15 06:57 +0000
    Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-15 09:25 +0000
      Re: Old commercial UNIX in '26 ram@zedat.fu-berlin.de (Stefan Ram) - 2026-06-15 10:01 +0000
      Re: Old commercial UNIX in '26 ted@loft.tnolan.com (Ted Nolan <tednolan>) - 2026-06-15 13:39 +0000
        Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-15 14:06 +0000
      Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-15 14:36 +0000
        Re: Old commercial UNIX in '26 jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-06-15 11:14 -0400
          Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-15 15:29 +0000
            Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-15 16:23 +0000
              Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-15 16:43 +0000
                Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-15 19:06 +0000
                Re: Old commercial UNIX in '26 Pluted Pup <plutedpup@outlook.com> - 2026-06-16 20:07 -0700
      Re: Old commercial UNIX in '26 drb@ihatespam.msu.edu (Dennis Boone) - 2026-06-15 15:16 +0000
    Re: Old commercial UNIX in '26 Daniel <me@sc1f1dan.com> - 2026-06-15 07:13 -0700
      Re: Old commercial UNIX in '26 mechanicjay@sol.smbfc.net (Mechanicjay) - 2026-06-18 15:47 +0000
  Re: Old commercial UNIX in '26 jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-06-15 11:34 -0400
    Re: Old commercial UNIX in '26 Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-06-15 23:55 +0000
      Re: Old commercial UNIX in '26 Piper McCorkle <contact@piperswe.me> - 2026-06-16 04:50 +0200
        Re: Old commercial UNIX in '26 Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-06-16 03:34 +0000
        Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-16 12:49 +0000
          Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 14:40 +0000
            Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-17 11:49 +0000
              Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-17 13:55 +0000
                Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-18 09:52 +0000
                Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-18 14:45 +0000
          Re: Old commercial UNIX in '26 Piper McCorkle <contact@piperswe.me> - 2026-06-16 21:59 +0200
            Re: Old commercial UNIX in '26 John Ames <commodorejohn@gmail.com> - 2026-06-16 13:53 -0700
            Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-17 12:00 +0000
              Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-17 13:21 +0000
  Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-15 19:35 +0000
    Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-15 20:01 +0000
      Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-16 12:50 +0000
    Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-15 22:40 +0000
      Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-16 09:19 +0000
        Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-16 13:00 +0000
          Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-16 13:44 +0000
        Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 14:47 +0000
          Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-16 14:59 +0000
            Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 16:24 +0000
              Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-16 20:19 +0000
                Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 21:27 +0000
                Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-17 08:44 +0000
              Re: Old commercial UNIX in '26 Andy Burns <usenet@andyburns.uk> - 2026-06-16 21:39 +0100
                Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-16 21:19 +0000
                Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 21:29 +0000
      Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-16 12:59 +0000
        Re: Old commercial UNIX in '26 Peter Flass <Peter@Iron-Spring.com> - 2026-06-16 07:30 -0700
          Re: Old commercial UNIX in '26 "Phigan" <phigan@mutinybbs.com.remove-54f-this> - 2026-06-18 16:28 -0400
          Re: Old commercial UNIX in '26 "Kurt Weiske" <kurt.weiske@realitycheckbbs.org.remove-83z-this> - 2026-06-20 08:22 -0700
            Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-20 18:59 +0000
              Re: Old commercial UNIX in '26 "Kurt Weiske" <kurt.weiske@realitycheckbbs.org.remove-jv-this> - 2026-06-28 14:16 -0700
            Re: Old commercial UNIX in '26 Bud Frede <frede@mouse-potato.com> - 2026-07-04 14:19 -0400
          Re: Old commercial UNIX in '26 Bud Frede <frede@mouse-potato.com> - 2026-07-04 14:08 -0400
        Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-16 14:51 +0000
          Re: Old commercial UNIX in '26 cross@spitfire.i.gajendra.net (Dan Cross) - 2026-06-16 21:32 +0000
            Re: Old commercial UNIX in '26 scott@slp53.sl.home (Scott Lurndal) - 2026-06-17 13:54 +0000
              Re: Old commercial UNIX in '26 Bob Eager <throwaway0008@eager.cx> - 2026-06-17 14:21 +0000
                Re: Old commercial UNIX in '26 Charlie Gibbs <cgibbs@kltpzyxm.invalid> - 2026-06-17 19:35 +0000
                [OT] Shifts in type of computing machinery (was: Re: Old commercial UNIX in '26) Nuno Silva <nunojsilva@invalid.invalid> - 2026-06-18 08:56 +0100
                Re: [OT] Shifts in type of computing machinery Lars Poulsen <lars@beagle-ears.com> - 2026-06-18 06:37 -0700
                Re: [OT] Shifts in type of computing machinery Peter Flass <Peter@Iron-Spring.com> - 2026-06-18 07:57 -0700
                Re: [OT] Shifts in type of computing machinery Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-06-18 22:51 +0000
                Re: [OT] Shifts in type of computing machinery Peter Flass <Peter@Iron-Spring.com> - 2026-06-19 07:37 -0700
                Re: [OT] Shifts in type of computing machinery Piper McCorkle <contact@piperswe.me> - 2026-06-19 18:46 +0200
                Re: [OT] Shifts in type of computing machinery Nuno Silva <nunojsilva@invalid.invalid> - 2026-06-20 09:28 +0100
                Re: [OT] Shifts in type of computing machinery Lars Poulsen <lars@beagle-ears.com> - 2026-06-19 19:57 -0700
                Re: [OT] Shifts in type of computing machinery Daniel Cerqueira <dan.list@lispclub.com> - 2026-06-18 15:27 +0100
                Re: [OT] Shifts in type of computing machinery Nuno Silva <nunojsilva@invalid.invalid> - 2026-06-21 09:15 +0100
                Re: [OT] Shifts in type of computing machinery Peter Flass <Peter@Iron-Spring.com> - 2026-06-18 07:52 -0700
                Re: [OT] Shifts in type of computing machinery Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-06-18 22:52 +0000
  Re: Old commercial UNIX in '26 Anthk GM <anthk@disroot.org> - 2026-06-22 19:14 +0000
    Re: Old commercial UNIX in '26 Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-06-22 22:29 +0000

csiph-web