ULE scheduler

{{Short description|Scheduler for FreeBSD operating system}}

{{Use dmy dates|date=June 2024}}

{{Infobox Software

| name = ULE scheduler

| logo =

| screenshot =

| caption =

| collapsible =

| author = Jeff Roberson{{cite web|url=http://www.freebsd.org/cgi/man.cgi?query=sched_ule&apropos=0&sektion=0&manpath=FreeBSD+7.1-RELEASE&format=html|title=sched_ule(4) man page|access-date=2008-09-02}}

| developer =

| released = {{Start date|2003|01|26|df=yes}}{{cite web|url=http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/kern/sched_ule.c|title=FreeBSD CVS log |access-date=27 August 2008 }}

| latest preview version =

| latest preview date =

| programming language = C

| operating system = FreeBSD

| platform =

| size =

| language =

| status =

| genre =

| license = BSD 2-clause

| website =

}}

ULE is the default scheduler for the FreeBSD operating system (versions 7.1 and forward) for the i386 and AMD64 architectures.{{cite web|url=http://www.freebsd.org/releases/7.1R/announce.html|title=FreeBSD 7.1-RELEASE Release Announcement}} retrieved on 5 January 2009 It was introduced in FreeBSD version 5,{{cite web|url=http://www.usenix.org/event/bsdcon03/tech/full_papers/roberson/roberson.pdf|title=ULE: A Modern Scheduler for FreeBSD |access-date=23 June 2008 }} 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,{{sfn|McKusick|Neville-Neil|2004|loc=4.4. Thread Scheduling}} 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,{{cite web|url=http://www.freebsd.org/releases/7.0R/relnotes.html|title=FreeBSD 7.0-RELEASE Release Notes |access-date=23 June 2008 }} as well as interactive response under heavy load.{{cite web|url=http://jeffr-tech.livejournal.com/3729.html |title=ULE 2.0 |access-date=2008-09-02 |first=Jeff |last=Roberson |url-status=dead |archive-url=https://web.archive.org/web/20080517020426/http://jeffr-tech.livejournal.com/3729.html |archive-date=17 May 2008 }} The user may switch between the BSD scheduler and ULE using a kernel compile-time tunable.{{cite web|url=http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html|title=FreeBSD Handbook|access-date=2009-03-18|work=Chapter 8 Configuring the FreeBSD Kernel}}

References

{{reflist}}

= Sources =

{{refbegin}}

  • {{cite book|last=McKusick|first=M. K.|last2=Neville-Neil|first2=G. V.|title=The Design and Implementation of the FreeBSD Operating System|publisher=Pearson Education|year=2004|ISBN=978-0-321-68003-7|url=https://books.google.com/books?id=-RqMzqH__BMC&pg=PT153|page=153}}

{{refend}}

{{FreeBSD}}

Category:BSD software

Category:Processor scheduling algorithms

{{operating-system-stub}}