9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: David Leimbach <leimy2k@gmail.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] NIX 64-bit kernel is available
Date: Wed, 14 Sep 2011 10:32:21 -0700	[thread overview]
Message-ID: <CAJJ04x5J+HO8VLT9-ANgc0NHjT-gmdOEaz78kJGE+c2U-Mb6ww@mail.gmail.com> (raw)
In-Reply-To: <CAP6exYKf6RL6J8MU1E3vc4y_TarbYzowkeHdTrpZ1Q5ved9faQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3476 bytes --]

Great set of ideas here!

On Wed, Sep 14, 2011 at 8:41 AM, ron minnich <rminnich@gmail.com> wrote:

> We'd like to announce the availability of NIX, a 64-bit Plan 9 kernel
> with some new ideas. The full set of changes will be covered at IWP9.
> For now, here are some highlights.
>
> - 2 MB PTEs. 4096 byte PTEs are not used in user programs at all.
>

PTE = Page Table Entry?  Sorry, been working in Java too long I guess :-(.


>
> - 64 bit address space for processes, backed by 1 Gbyte PTEs for BSS
> with addresses > 1 Gbyte. Use of Gbyte PTEs does not require anything
> special; it just works. It's possible to have a process with (e.g.) 64
> Gib of memory in use which only needs 66 active PTEs (1 for code, 1
> for date, and 64 for BSS).
>
> - Core roles. A process can designate that it wishes to run on an
> application core (AC). ACs do not run kernel code, and take no
> interrupts, not even the APIC timer interrupt. They own the core and
> are never pre-empted. They can run all standard system calls however.
>

That sounds amazingly great for certain servers.


>
> - kernel-based Linux system call interface (work in progress)
>

Can I run Mozilla Firefox?  :-)


>
> - Optimistic semaphores, a new type of semaphore which lives half in
> and half out of the kernel, and which in many cases will never run in
> kernel
>

How is this both like and not like a futex?


>
> - Tubes, a new IPC mechanism like pipes that uses the optimistic semaphores
>

I love the name...


>
> - A new memory management design which eliminates the huge static
> array of page structs
>
> - NUMA-aware allocation, such that a process can be co-located with
> its memory. This support is transparent.
>
> - Kernel can address all of physical memory. No more bounce buffers.
> The kernel maps memory with GiB PTEs.
>
> - And, finally, standard Plan 9 binaries run unmodified on NIX.
>
> For now, NIX will only run on 64-bit x86 CPUs which support Gbyte
> PTEs, e.g. K10.
>
> The tree is set up to run under 9vx or on a standard Plan 9 system. We
> have tested and it is possible to do a full build of amd64 binaries
> and then a build in /sys/src/nix/k10 and boot the kernel. You'll be
> prompted
> during the build for information to create an nvram file.
>
> A new package manager is included in the tree, written by John Floren
> and Nemo. It aims to be fast (downloading packages over HTTP) and
> maintainable; development is ongoing, but for now pm(1) gives some
> essential information.
>
> As for the name: we were trying to express the fact that ACs do not
> have a kernel,
> and after much time spent with the dictionary, came up with nix.
>
> The code is at http://code.google.com/p/nix-os/. Management
> of the code base will be via the standard code review mechanisms
> supported by google code; you're going to need mercurial and
> the extensions. We welcome contributors.  For guidelines on how to
> contribute see
> http://golang.org/doc/contribute.html.
>
> You'll need a 9vx setup to start.
> Checkout the tree, and run 9vx with the tree as your root. You'll find a
> file
> called BUILDING_AMD64 with further instructions in the root.
>
> Thanks to Bell Labs, University Rey Juan Carlos, Vita Nuova, the
> US Dept. of Energy and  Comunidad de Madrid for their support
> and efforts in getting this working.
>
> Ron
>

Thanks again Ron and everyone involved!

[-- Attachment #2: Type: text/html, Size: 4786 bytes --]

  parent reply	other threads:[~2011-09-14 17:32 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-14 15:41 ron minnich
2011-09-14 15:58 ` andrey mirtchovski
2011-09-14 16:06   ` Jeff Sickel
2011-09-14 17:32 ` David Leimbach [this message]
2011-09-14 17:40   ` ron minnich
2011-09-14 17:51   ` Francisco J Ballesteros
2011-09-14 20:38     ` s s
2011-09-14 20:42       ` John Floren
2011-09-14 20:50         ` Gabriel Díaz López de la Llave
2011-09-14 20:52         ` s s
2011-09-14 21:32         ` Bakul Shah
2011-09-14 21:48           ` John Floren
2011-09-14 22:10             ` Dan Cross
2011-09-17 20:45               ` Brantley Coile
2011-09-14 22:36             ` Nick LaForge
2011-09-14 22:44               ` ron minnich
2011-09-16 17:48         ` Jack Johnson
2011-09-14 20:50       ` Lluís Batlle i Rossell
2011-09-14 21:12         ` ron minnich
2011-09-14 20:56       ` Francisco J Ballesteros
2011-09-14 21:11         ` ron minnich
2011-09-14 19:22 ` Bakul Shah
2011-09-14 19:30   ` Francisco J Ballesteros
2011-09-14 21:10   ` ron minnich
2011-09-14 21:38     ` Bakul Shah
2011-09-14 21:48       ` ron minnich
2011-09-14 22:08       ` yy
     [not found]       ` <CADErNDukvepbqiUEObGMY7Fba__kG953wmtNdUSFPEwwqSnHVw@mail.gmail.c>
2011-09-14 22:12         ` erik quanstrom
2011-09-14 22:32           ` hiro
2011-09-15  1:10     ` David Leimbach
     [not found]   ` <CAP6exY+iHDpy+dig3Rvi6WHjv8k8sajOwJ3AjMxKADvoSZqtDw@mail.gmail.c>
2011-09-14 21:14     ` erik quanstrom
2011-09-14 21:33       ` Charles Forsyth
2011-09-14 21:14 ` Don Bailey
2011-09-15 10:19 ` Christian Neukirchen
2011-09-15 10:34   ` Francisco J Ballesteros
2011-09-15 10:39     ` hiro
2011-09-15 10:42       ` Francisco J Ballesteros
2011-09-15 10:50   ` Christian Neukirchen
2011-09-15 11:07     ` Noah Evans
2011-09-15 11:11       ` Noah Evans
2011-09-15 11:57       ` Christian Neukirchen
2011-09-14 21:13 erik quanstrom
     [not found] <CAP6exYKf6RL6J8MU1E3vc4y_TarbYzowkeHdTrpZ1Q5ved9faQ@mail.gmail.c>
2011-09-15  4:39 ` erik quanstrom
2011-09-15  7:28   ` Nemo
2011-09-15  9:39     ` Francisco J Ballesteros
2011-09-15 13:17     ` erik quanstrom
2011-09-15 14:02       ` Francisco J Ballesteros
     [not found]       ` <CA+N-5bYxuADQJ1e2PChv7RZA8DdpHcqvnotX7jSnSPxxYK1Bbw@mail.gmail.c>
2011-09-15 14:13         ` erik quanstrom
2011-09-15 14:42           ` Francisco J Ballesteros

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=CAJJ04x5J+HO8VLT9-ANgc0NHjT-gmdOEaz78kJGE+c2U-Mb6ww@mail.gmail.com \
    --to=leimy2k@gmail.com \
    --cc=9fans@9fans.net \
    /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).