The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: tytso@mit.edu (Theodore Ts'o)
Subject: [TUHS] Happy birthday, Ken Thompson!
Date: Sun, 4 Feb 2018 08:59:09 -0500	[thread overview]
Message-ID: <20180204135909.GA11167@thunk.org> (raw)
In-Reply-To: <CANCZdfr7Tb8T1tZayxoHdGGi+YHNCq8aSCg7Tka0bxWkaTXfbA@mail.gmail.com>

On Sat, Feb 03, 2018 at 06:14:30PM -0700, Warner Losh wrote:
> >> Linux and FreeBSD are now two monstrous trolls, bloated and extremely
> >> complex and large.
> > Looking through /usr/include/***.h, I see:
> >
> > FreeBSD 10.4:   #define SYS_MAXSYSCALL  548
> > MacOS Sierra:   #define SYS_MAXSYSCALL  522
> > Debian 8.10:    I don't know where the Penguins have hidden it...
> 
> Part of the reason for the bloat is that newer syscalls replace older ones
> (with the option for keeping the older one around for compat). So, open
> becomes openat (since the latter is more expressive). Also, over time,
> different data types grow to allow, for example, larger than 2G files,
> which has a big ripple effect on lots of system calls. But looking now, a
> lot are due to MAC and ACL functions (well, 30). There's 80 'at' system
> calls (though some are in the ~150 obsolete list)... So it isn't as utterly
> horrific as it might sound, but it's still pretty bad. (There's 400
> defined, with 20 of those being for prior versions of the OS).

Indeed.  Linux has 292 system calls as of Linux 4.15.  If you include
the backwards compatibility system calls, the number of system calls
goes up to 352.

Of course, just comparing system calls isn't really the whole story.
There are also system interfaces via /proc and /sys, ioctl's, etc.
(And by that measure Plan9 has a lot of complexity that doesn't show
up in plain system call counts.)

*And* of course, a lot of bloat doesn't show up in kernel/userspace
interfaces, but rather in the complexity that people expect to be
found in modern Systems, whether they be in the kernel or in the Java
class libraries, etc.  Complaining about the OS complexity when people
are gleefully building super-complex systems in userspace seems to me
to be a kind of "get off my lawn" complaint.

The question is, given an overall system architecture, *including*
userspace, when does it make sense to try to simplify things by
pushing some of the work to the lower layers of the software stack,
and when does it make sense to force the userspace to deal with the
complexity?

Of course, if you want to do all of your programming on the equivalent
of a Raspberry Pi, that also can be your choice.  :-)

						- Ted


  reply	other threads:[~2018-02-04 13:59 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-03 20:57 Dave Horsfall
2018-02-03 21:12 ` Donald ODona
2018-02-03 21:59   ` Andy Kosela
2018-02-04  0:52     ` Dave Horsfall
2018-02-04  1:07       ` Lyndon Nerenberg
     [not found]         ` <CAM4FNSvnR+ZkgMyJ-0+p7LKKAYzts-7268RgApteLoT9q=TtYA@mail.gmail.com>
     [not found]           ` <CAM4FNSu-eQkt=AeUJ=2uvEwN=BQe7qdWn6ZCQmfFjb9at6uf_w@mail.gmail.com>
2018-02-04  1:29             ` Daniel Camolês
2018-02-04  1:35               ` Lyndon Nerenberg
2018-02-04  1:14       ` Warner Losh
2018-02-04 13:59         ` Theodore Ts'o [this message]
2018-02-05 13:13     ` Tony Finch
2018-02-05 15:45       ` Bakul Shah
2018-02-05 16:19         ` Clem Cole
2018-02-05 17:41           ` Bakul Shah
2018-02-05 21:58       ` Andy Kosela
2018-02-05 22:47         ` Dave Horsfall
2018-02-05 22:52           ` Toby Thain
2018-02-05 22:54           ` Dan Cross
2018-02-06  4:58             ` Theodore Ts'o
2018-02-06  5:05               ` Gregg Levine
2018-02-03 21:35 ` Will Senn
2018-02-03 21:49   ` Arthur Krewat
2018-02-03 22:59     ` Dave Horsfall
2018-02-04  0:51       ` Steve Simon
     [not found]         ` <CAM4FNStCAj-iFfg_DxyhkZMQu3dTx_4SeSsimALb3e1ktav2KQ@mail.gmail.com>
     [not found]           ` <CAM4FNSv41x28yGYcmVLhwjh9LUNfBPNq=dpgtv5jSNuRemsY8A@mail.gmail.com>
     [not found]             ` <CAM4FNSvMXLciCPUqZqaWLz7i0OMGesSWcPvETM4+p2Gj0zMPZw@mail.gmail.com>
     [not found]               ` <CAM4FNSsNomfRc6LNzFLFeA8EvgAgL7suJ9Zy_1gbVFsU2tkDDw@mail.gmail.com>
     [not found]                 ` <CAM4FNSu-Ktx5e0UmBkw+ceJzZaM5Y-gWi1DT05jS3eTAoV=tcA@mail.gmail.com>
     [not found]                   ` <CAM4FNSvxCrOiS=Qg9ntGrDA6P-7MW4pqTis7GpzBcLtTmj5NaA@mail.gmail.com>
     [not found]                     ` <CAM4FNSsYZx3h35s1509M4La50Gc_AyGtU4SWzg9iQMziuBUDNw@mail.gmail.com>
     [not found]                       ` <CAM4FNSsYNpdohKZPUaYsyHxUvCTbJ59KgLObZcRcmdsKuRLr5Q@mail.gmail.com>
     [not found]                         ` <CAM4FNStyCWwPTYVoZ1pcEJqTn-60P-1PTZdv=+P5F38tpUiLqg@mail.gmail.com>
2018-02-04  1:51                           ` Daniel Camolês
2018-02-04 17:33                             ` Toby Thain
  -- strict thread matches above, loose matches on Subject: below --
2019-02-04 23:42 Doug McIlroy
2019-02-05  3:49 ` Larry McVoy
2019-02-04  1:09 [TUHS] Happy Birthday " Doug McIlroy
2019-02-03 20:23 [TUHS] Happy birthday, " Dave Horsfall
2019-02-03 21:39 ` Greg 'groggy' Lehey
2019-02-03 22:07   ` Dave Horsfall
2019-02-03 22:33     ` Clem Cole
2019-02-04  2:03       ` Paul Winalski
2019-02-04  3:57       ` Jason Stevens
2019-02-04  6:25         ` Peter Jeremy
2019-02-04  7:59           ` Steve Nickolas
2019-02-04 15:04             ` Dave Horsfall
2019-02-04 15:39             ` Toby Thain
2019-02-04 17:08         ` Al Kossow
2019-02-03 22:39     ` Michael Kjörling
2019-02-03 22:55     ` Steve Nickolas
2019-02-03 23:37       ` Andy Kosela
2019-02-04  0:32     ` Larry McVoy
2019-02-04  1:00       ` Steve Nickolas
2019-02-04  9:43 ` Donald ODona
2018-02-03 21:46 Norman Wilson
2017-02-03 20:00 Dave Horsfall
2017-02-04 12:38 ` Michael Kjörling
2017-02-04 12:44   ` Steve Nickolas
2017-02-04 13:15     ` Michael Kjörling
2016-02-03 17:38 Dave Horsfall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180204135909.GA11167@thunk.org \
    --to=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).