Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Friday August 28 2015, @04:51AM   Printer-friendly
from the kernel-sanders dept.

FreeBSD hackers Jordan Hubbard and Kip Macy surprised an audience of Bay Area FreeBSD Users in August 2015 by laying out their version for a new architecture, based vaguely on BSD but with a microkernel and an event-driven framework consisting of something like libdispatch and launchd. Those are big changes if you are familiar with what FreeBSD has looked like for all of its life.

The good news is, this doesn't mean the destruction of the FreeBSD we all know and love. In fact, Hubbard, who is also the CTO of ixSystems (developers of FreeNAS and PCBSD, both products derived from FreeBSD) aren't aiming to impact FreeBSD but rather change the fundamental architecture of ixSystems' own products.

The slide deck walks you through the proposed, new architecture. Better still, watch the talk yourself.

As a FreeBSD fan, I'm glad they're treating this as a separate product and not hacking up the FreeBSD source tree; that gives us time to see how this shakes out.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0) by Anonymous Coward on Friday August 28 2015, @08:19AM

    by Anonymous Coward on Friday August 28 2015, @08:19AM (#228890)

    Because you didn't disable SuperFetch, and it's opportunistically filling your RAM with files you might want to use soon, that's why. If you don't want Windows to USE ALL THE RAM then disable SuperFetch, you fuckwit.

  • (Score: 1, Insightful) by Anonymous Coward on Friday August 28 2015, @08:45AM

    by Anonymous Coward on Friday August 28 2015, @08:45AM (#228898)

    If 'superfetch' causes swap thrashing than superfetch should not be enabled by default.

  • (Score: 3, Insightful) by jdavidb on Friday August 28 2015, @02:56PM

    by jdavidb (5690) on Friday August 28 2015, @02:56PM (#228997) Homepage Journal
    I would've modded that up if it weren't for the "you fuckwit." No need to ream people out for being less knowledgeable than you, especially about Windows.
    --
    ⓋⒶ☮✝🕊 Secession is the right of all sentient beings
  • (Score: 0) by Anonymous Coward on Friday August 28 2015, @05:44PM

    by Anonymous Coward on Friday August 28 2015, @05:44PM (#229086)

    Swapping has been a problem under Windows before superfetch. I have disabled superfetch, and unnecessary swapping still occurs when there is still plenty of RAM available. I know jack about the internals of Windows, so I am mystified why this happens when I never observed swapping on *nix systems until RAM runs out.

    • (Score: 2) by AnonymousCowardNoMore on Friday August 28 2015, @06:30PM

      by AnonymousCowardNoMore (5416) on Friday August 28 2015, @06:30PM (#229107)

      It's been a while since I read up on this stuff. Take me with a grain of salt.

      Basically, the developers of Windows and of Linux subscribed to different schools of thought w.r.t. swapping. There is the school which says that you don't swap until you need to. This is faster on average in cases where you rarely run out of RAM; Linux swapping is based on this principle. There is another school of thought which says that you should swap pre-emptively. When you have a data sitting in RAM, even with plenty still available, Windows will take the pages that have not been accessed in a while and move them to swap. (They are less likely to be accessed again in the near future, by the principle of locality [wikipedia.org].) This frees up RAM at the cost of an immediate performance penalty while the swap takes place. However, it results in a speed-up if, at some point in future, you start loading more data to the extent that you would have exceeded physical RAM without the swap. (If you are forced to swap because you just ran out of RAM, your programs are forced to block while waiting for swapping.)

      Superfetch is a different technology, which pre-emptively loads the common programs and libraries that are likely to be needed in future. It will result in a speed-up if those libraries/programs really will be opened but wastes resources otherwise.

      • (Score: 2) by HiThere on Friday August 28 2015, @07:04PM

        by HiThere (866) Subscriber Badge on Friday August 28 2015, @07:04PM (#229121) Journal

        Odd. I've been designing a caching system for a program, and I just sort of assumed that:
        1) I should load the extremely most commonly used bits, and then let them age. If they don't get used, then it's an unusual work load.
        2) Try not to fill up RAM. Something else might need it. Or I might need to start up a new process. So only use all RAM when you really need it.
        3) When freeing things, free the least recently specifically accessed chunks. (Don't count times when you iterate through everything.)

        So it's sort of a combination of the two approaches, with a conservative tendency to not over use RAM allocation. (Granted there are lots of adjustable parameters that are currently just gosh numbers, and can't be more until I actually get things working.)

        But one of my major principles is "You aren't the only fish in the sea!", and to me that seems like something that should be basic.

        --
        Javascript is what you use to allow unknown third parties to run software you have no idea about on your computer.