ULE scheduler

Last updated

ULE scheduler
Original author(s) Jeff Roberson [1]
Initial release26 January 2003 (2003-01-26) [2]
Stable release 3.0 (27 February 2008) [±]
Repository OOjs UI icon edit-ltr-progressive.svg
Written in C
Operating system FreeBSD
License BSD 2-clause

ULE is the default scheduler for the FreeBSD operating system (versions 7.1 and forward) for the i386 and AMD64 architectures. [3] It was introduced in FreeBSD version 5, [4] but it was disabled by default for a time in favor of the traditional BSD scheduler until it reached maturity. The original BSD scheduler does not make full use of SMP or SMT, [5] which is important in modern computing environments. The primary goal of the ULE project is to make better use of SMP and SMT environments. ULE should improve performance in both uniprocessor and multiprocessor environments, [6] as well as interactive response under heavy load. [7] The user may switch between the BSD scheduler and ULE using a kernel compile-time tunable. [8]

Related Research Articles

The Unix file system (UFS) is a file system supported by many Unix and Unix-like operating systems. It is a distant descendant of the original filesystem used by Version 7 Unix.

DragonFly BSD Operating system

DragonFly BSD is a free and open-source Unix-like operating system forked from FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and FreeBSD developer between 1994 and 2003, began working on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on 16 July 2003.

PF is a BSD licensed stateful packet filter, a central piece of software for firewalling. It is comparable to netfilter (iptables), ipfw, and ipfilter.

XNU

XNU is the computer operating system (OS) kernel developed at Apple Inc. since December 1996 for use in the Mac OS X operating system and released as free and open-source software as part of the Darwin OS, which is the basis for the Apple TV Software, iOS, iPadOS, watchOS, and tvOS OSes. XNU is an abbreviation of X is Not Unix.

spl is the name for a collection of Unix kernel routines or macros used to change the interrupt priority level. This was historically needed to synchronize critical sections of kernel code that shouldn't be interrupted. Newer Unix variants which support symmetric multiprocessing now mostly use mutexes for this purpose, which is a more general solution, so multiple processors can execute kernel code at the same time.

BSD Daemon

The BSD Daemon, nicknamed Beastie, is the generic mascot of BSD operating systems.

Soft updates is an approach to maintaining file system meta-data integrity in the event of a crash or power outage. Soft updates work by tracking and enforcing dependencies among updates to file system meta-data. Soft updates are an alternative to the more commonly used approach of journaling file systems.

UNIX/32V was an early version of the Unix operating system from Bell Laboratories, released in June 1979. 32V was a direct port of the Seventh Edition Unix to the DEC VAX architecture.

OpenServer Closed source version of Unix developed by SCO

Xinuos OpenServer, previously SCO UNIX and SCO Open Desktop, is a closed source computer operating system developed by Santa Cruz Operation (SCO), later acquired by SCO Group, and now owned by Xinuos. Early versions of OpenServer were based on UNIX System V, while the later OpenServer 10 is based on FreeBSD 10.

There are a number of Unix-like operating systems based on or descended from the Berkeley Software Distribution (BSD) series of Unix variant options. The three most notable descendants in current use are FreeBSD, OpenBSD, and NetBSD, which are all derived from 386BSD and 4.4BSD-Lite, by various routes. Both NetBSD and FreeBSD started life in 1993, initially derived from 386BSD, but in 1994 migrating to a 4.4BSD-Lite code base. OpenBSD was forked from NetBSD in 1995. Other notable derivatives include DragonFly BSD, which was forked from FreeBSD 4.8, and Apple Inc.'s iOS and macOS, with its Darwin base including a large amount of code derived from FreeBSD.

In Unix and Unix-like operating systems, job control refers to control of jobs by a shell, especially interactively, where a "job" is a shell's representation for a process group. Basic job control features are the suspending, resuming, or terminating of all processes in the job/process group; more advanced features can be performed by sending signals to the job. Job control is of particular interest in Unix due to its multiprocessing, and should be distinguished from job control generally, which is frequently applied to sequential execution.

FreeBSD Free Unix-like operating system

FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular open-source BSD operating system, accounting for more than three-quarters of all installed simply, permissively licensed BSD systems.

Marshall Kirk McKusick American computer scientist

Marshall Kirk McKusick is a computer scientist, known for his extensive work on BSD UNIX, from the 1980s to FreeBSD in the present day. He was president of the USENIX Association from 1990 to 1992 and again from 2002 to 2004, and still serves on the board. He is on the editorial board of ACM Queue Magazine. He is known to friends and colleagues as "Kirk".

In operating systems, a giant lock, also known as a big-lock or kernel-lock, is a lock that may be used in the kernel to provide concurrency control required by symmetric multiprocessing (SMP) systems.

The Berkeley Software Distribution (BSD) is a discontinued operating system based on Research Unix, developed and distributed by the Computer Systems Research Group (CSRG) at the University of California, Berkeley. The term "BSD" commonly refers to its descendants, including FreeBSD, OpenBSD, NetBSD, and DragonFly BSD.

Unix Family of computer operating systems that derive from the original AT&T Unix

Unix is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.

NetBSD Open-source Unix-like operating system

NetBSD is a free and open-source Unix-like operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is available for many platforms, including servers, desktops, handheld devices, and embedded systems.

NextBSD

NextBSD was an operating system initially based on the trunk version of FreeBSD as of August 2015. It is a fork of FreeBSD which implements new features developed on branches but not yet implemented in FreeBSD. As of 2019 the website seems defunct, and the later commits on GitHub date from July, 2016. The Wayback Machine captures of the website after 2016-12-15 are domain squatter pages and as of 2021-03-17 the site is redirecting to a fake "Apple Support" page.

The History of the Berkeley Software Distribution begins in the 1970s.

References

  1. "sched_ule(4) man page" . Retrieved 2 September 2008.
  2. "FreeBSD CVS log" . Retrieved 27 August 2008.
  3. "FreeBSD 7.1-RELEASE Release Announcement". retrieved on 5 January 2009
  4. "ULE: A Modern Scheduler for FreeBSD" (PDF). Retrieved 23 June 2008.
  5. McKusick & Neville-Neil 2004, 4.4. Thread Scheduling.
  6. "FreeBSD 7.0-RELEASE Release Notes" . Retrieved 23 June 2008.
  7. Roberson, Jeff. "ULE 2.0". Archived from the original on 17 May 2008. Retrieved 2 September 2008.
  8. "FreeBSD Handbook". Chapter 8 Configuring the FreeBSD Kernel. Retrieved 18 March 2009.

Sources