ULE: a Modern Scheduler for Freebsd
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Oracle Database Licensing Information, 11G Release 2 (11.2) E10594-26
Oracle® Database Licensing Information 11g Release 2 (11.2) E10594-26 July 2012 Oracle Database Licensing Information, 11g Release 2 (11.2) E10594-26 Copyright © 2004, 2012, Oracle and/or its affiliates. All rights reserved. Contributor: Manmeet Ahluwalia, Penny Avril, Charlie Berger, Michelle Bird, Carolyn Bruse, Rich Buchheim, Sandra Cheevers, Leo Cloutier, Bud Endress, Prabhaker Gongloor, Kevin Jernigan, Anil Khilani, Mughees Minhas, Trish McGonigle, Dennis MacNeil, Paul Narth, Anu Natarajan, Paul Needham, Martin Pena, Jill Robinson, Mark Townsend This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. -
The Dragonflybsd Operating System
1 The DragonFlyBSD Operating System Jeffrey M. Hsu, Member, FreeBSD and DragonFlyBSD directories with slightly over 8 million lines of code, 2 million Abstract— The DragonFlyBSD operating system is a fork of of which are in the kernel. the highly successful FreeBSD operating system. Its goals are to The project has a number of resources available to the maintain the high quality and performance of the FreeBSD 4 public, including an on-line CVS repository with mirror sites, branch, while exploiting new concepts to further improve accessible through the web as well as the cvsup service, performance and stability. In this paper, we discuss the motivation for a new BSD operating system, new concepts being mailing list forums, and a bug submission system. explored in the BSD context, the software infrastructure put in place to explore these concepts, and their application to the III. MOTIVATION network subsystem in particular. A. Technical Goals Index Terms— Message passing, Multiprocessing, Network The DragonFlyBSD operating system has several long- operating systems, Protocols, System software. range technical goals that it hopes to accomplish within the next few years. The first goal is to add lightweight threads to the BSD kernel. These threads are lightweight in the sense I. INTRODUCTION that, while user processes have an associated thread and a HE DragonFlyBSD operating system is a fork of the process context, kernel processes are pure threads with no T highly successful FreeBSD operating system. Its goals are process context. The threading model makes several to maintain the high quality and performance of the FreeBSD guarantees with respect to scheduling to ensure high 4 branch, while exploring new concepts to further improve performance and simplify reasoning about concurrency. -
Notice for Netapp HCI
Notice About this document The following copyright statements and licenses apply to software components that are distributed with various versions of the NetApp HCI products. Your product does not necessarily use all the software components referred to below. Where required, source code is published at the following location: https://opensource.netapp.com/ 1 Notice Copyrights and licenses The following component(s) is(are) subject to the AESLib License (BSD 2.0 -) • AESLib License contribution to skein - Unspecified Copyright (c) 2003, Dr Brian Gladman, Worcester, UK. All rights reserved. AESLib License (BSD 2.0 -) Copyright (c) 2003, Copera, Inc., Mountain View, CA, USA. All rights reserved. LICENSE TERMS The free distribution and use of this software in both source and binary form is allowed (with or without changes) provided that: 1. distributions of this source code include the above copyright notice, this list of conditions and the following disclaimer; 2. distributions in binary form include the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other associated materials; 3. the copyright holder's name is not used to endorse products built using this software without specific written permission. DISCLAIMER This software is provided 'as is' with no explcit or implied warranties in respect of any properties, including, but not limited to, correctness and fitness for purpose. ------------------------------------------------------------------------- Issue Date: March 10, 2003 2 Notice The following component(s) is(are) subject to the Apache 1.1 • Apache Base64 functions - Unspecified Copyright (c) 1995-1999 The Apache Group. All rights reserved. Apache Software License Version 1.1 Copyright (c) 2000 The Apache Software Foundation. -
On Intelligent Mitigation of Process Starvation in Multilevel Feedback Queue Scheduling Joseph E
Kennesaw State University DigitalCommons@Kennesaw State University Master of Science in Computer Science Theses Department of Computer Science Spring 4-20-2017 On Intelligent Mitigation of Process Starvation In Multilevel Feedback Queue Scheduling Joseph E. Brown Kennesaw State University Follow this and additional works at: http://digitalcommons.kennesaw.edu/cs_etd Part of the Computational Engineering Commons Recommended Citation Brown, Joseph E., "On Intelligent Mitigation of Process Starvation In Multilevel Feedback Queue Scheduling" (2017). Master of Science in Computer Science Theses. 8. http://digitalcommons.kennesaw.edu/cs_etd/8 This Thesis is brought to you for free and open access by the Department of Computer Science at DigitalCommons@Kennesaw State University. It has been accepted for inclusion in Master of Science in Computer Science Theses by an authorized administrator of DigitalCommons@Kennesaw State University. For more information, please contact [email protected]. On Intelligent Mitigation of Process Starvation In Multilevel Feedback Queue Scheduling Master of Science in Computer Science Thesis By Joseph E Brown MSCS Student Department of Computer Science College of Computing and Software Engineering Kennesaw State University, USA Submitted in partial fulfillment of the Requirements for the degree of Master of Science in Computer Science November 2016 On Intelligent Mitigation of Process Starvation In Multilevel Feedback Queue Scheduling This thesis approved for recommendation to the Graduate Council. 2 Kennesaw State University College of Computing and Software Engineering Thesis Title: On Intelligent Mitigation of Process Starvation In Multilevel Feedback Queue Schedul- ing . Author: Joseph E Brown. Department: Computer Science. Approved for Thesis Requirements of the Master of Science Degree Thesis Advisor: Ken Hoganson Date Thesis Reader: Dr. -
Thread Scheduling in Multi-Core Operating Systems Redha Gouicem
Thread Scheduling in Multi-core Operating Systems Redha Gouicem To cite this version: Redha Gouicem. Thread Scheduling in Multi-core Operating Systems. Computer Science [cs]. Sor- bonne Université, 2020. English. tel-02977242 HAL Id: tel-02977242 https://hal.archives-ouvertes.fr/tel-02977242 Submitted on 24 Oct 2020 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Ph.D thesis in Computer Science Thread Scheduling in Multi-core Operating Systems How to Understand, Improve and Fix your Scheduler Redha GOUICEM Sorbonne Université Laboratoire d’Informatique de Paris 6 Inria Whisper Team PH.D.DEFENSE: 23 October 2020, Paris, France JURYMEMBERS: Mr. Pascal Felber, Full Professor, Université de Neuchâtel Reviewer Mr. Vivien Quéma, Full Professor, Grenoble INP (ENSIMAG) Reviewer Mr. Rachid Guerraoui, Full Professor, École Polytechnique Fédérale de Lausanne Examiner Ms. Karine Heydemann, Associate Professor, Sorbonne Université Examiner Mr. Etienne Rivière, Full Professor, University of Louvain Examiner Mr. Gilles Muller, Senior Research Scientist, Inria Advisor Mr. Julien Sopena, Associate Professor, Sorbonne Université Advisor ABSTRACT In this thesis, we address the problem of schedulers for multi-core architectures from several perspectives: design (simplicity and correct- ness), performance improvement and the development of application- specific schedulers. -
Matthew Dillon Dragonfly BSD Project 23 October 2003 Dragonfly Overview
Matthew Dillon DragonFly BSD Project 23 October 2003 DragonFly Overview ●FreeBSD 4.x and 5.x directions ●Differentiating DragonFly, the basis for a project fork ● A different, more maintainable user threading API (syscall messaging) ● A different, more maintainable approach to MP design ● CPU Isolation by design using IPI messaging rather then by accident w/Mutexes ● Light Weight Kernel Threading with fewer hacks ●Project Goals ● Maintaining stability, producing production-capable releases ● A more consistent and more easily maintained message-based framework ● UP, MP, SSI Scaleability ● Userland VFS Development ● Machine-verified Package Management ●This Presentation ● Threading And Messaging ● Our approach to the Big Giant Lock problem. Why not mutexes? ● Our approach to achieving a Single System Image (SSI) DragonFly Threading and Messaging Model Matthew Dillon DragonFly BSD Project 23 October 2003 Light Weight Kernel Threading and User Processes LWKT SUBSYSTEM USERLAND PROCESS SCHEDULER CPU #1 PROCESS RUNQ SCHEDULER THREAD LWKT SCHEDULER THREAD PROCESS1 (FIXED PRIORITY) PROCESS2 THREAD PROCESS2 CURPROC ON CPU1 PROCESS3 CPU #2 THREAD PROCESS4 LWKT SCHEDULER PROCESS5 THREAD PROCESS5 (FIXED PRIORITY) CURPROC ON CPU2 THREAD PROCESS6 IPI Messaging ●ABSTRACTION PROMOTES CPU ISOLATION ●ASYNCHRONOUS IPI MESSAGING AVOIDS MUTEX OPS ●SIMPLE CRITICAL SECTIONS FOR LOCAL ACCESS ●MANY IPI OPS CAN BE PASSIVE / CONTRAST W/ RCU CPU #1 CPU #2 SCHEDULER SCHEDULER ASYNC THREAD1 SCHEDULE IPI SCHEDULE THREAD2 THREAD2 MESSAGE THREAD2 ALLOCATOR ALLOCATE MEMORY -
Evolutionary Tree-Structured Storage: Concepts, Interfaces, and Applications
Evolutionary Tree-Structured Storage: Concepts, Interfaces, and Applications Dissertation submitted for the degree of Doctor of Natural Sciences Presented by Marc Yves Maria Kramis at the Faculty of Sciences Department of Computer and Information Science Date of the oral examination: 22.04.2014 First supervisor: Prof. Dr. Marcel Waldvogel Second supervisor: Prof. Dr. Marc Scholl i Abstract Life is subdued to constant evolution. So is our data, be it in research, business or personal information management. From a natural, evolutionary perspective, our data evolves through a sequence of fine-granular modifications resulting in myriads of states, each describing our data at a given point in time. From a technical, anti- evolutionary perspective, mainly driven by technological and financial limitations, we treat the modifications as transient commands and only store the latest state of our data. It is surprising that the current approach is to ignore the natural evolution and to willfully forget about the sequence of modifications and therefore the past state. Sticking to this approach causes all kinds of confusion, complexity, and performance issues. Confusion, because we still somehow want to retrieve past state but are not sure how. Complexity, because we must repeatedly work around our own obsolete approaches. Performance issues, because confusion times complexity hurts. It is not surprising, however, that intelligence agencies notoriously try to collect, store, and analyze what the broad public willfully forgets. Significantly faster and cheaper random-access storage is the key driver for a paradigm shift towards remembering the sequence of modifications. We claim that (1) faster storage allows to efficiently and cleverly handle finer-granular modifi- cations and (2) that mandatory versioning elegantly exposes past state, radically simplifies the applications, and effectively lays a solid foundation for backing up, distributing and scaling of our data. -
Bsdcan-2018-Governance.Pdf (Application/Pdf
The Evolution of FreeBSD Governance Marshall Kirk McKusick [email protected] http://www.mckusick.com Based on a paper written with Benno Rice The FreeBSD Journal, 4,5. September 2017, pp 26−31 BSDCan Conference Ottawa,Canada June 9, 2018 Copyright 2018 by Marshall Kirk McKusick 1 Background and Introduction The BerkeleySoftware Distribution (BSD) started in 1977 as a project of Bill Joy at the University of California at Berkeley Became a full distribution with the release of 3BSD for the VAX in 1979 Use of source-code control (SCCS) started in 1980 Adecade of releases were managed by the Computer Systems Research Group (CSRG), afour-person development team. Nearly-full open-source release of Net/2 in 1991 followed by 4.4BSD-Lite in 1994 2 The Formation of the FreeBSD Project FreeBSD was named on June 19, 1993 and wasderivedfrom Bill Jolitz version of 4.4BSD-Lite for the Intel 386 Managed under the CVS source-code control system Core team (with lifetime terms) created to decide who should be allowed to commit Initially distributed by Walnut Creek CDROM Separated into base system and ports to keep base system size managable GNATSwas brought up manage bug reports 3 The FreeBSD Project Movesinto Companies Yahoo ran entirely on FreeBSD and agreed to host CVS and distribution Justin Gibbs starts the FreeBSD Foundation aiming to provide the FreeBSD infrastructure Deadwood and apathy in the 20-member core team lead to creating bylaws that set up a 9-member elected core team First elected core team in 2000 with few carryovers from old core -
Limits and the Practical Usability of Bsds, a Big Data Prospective
Limits and the Practical Usability of BSDs, a Big Data Prospective Predrag Punosevacˇ [email protected] The Auton Lab Carnegie Mellon University June 11, 2016 1 / 22 Thanks Thanks to organizers for this great meeting and for giving me the op- portunity to speak. note 1 of slide 1 Intro ❖ Intro ● Who am I? ❖ Chronology ❖ Chronology II ❖ Genealogy Tree ❖ General Limitations ❖ Scientific Computing ❖ Continuation ❖ misc issues ❖ NetBSD ❖ OpenBSD ❖ pf.conf and pfctl ❖ OpenBSD cons ❖ FreeBSD ❖ TrueOS ❖ TurnKey Appliance ❖ FreeNAS ❖ pfSense ❖ DragonFly BSD ❖ HAMMER ❖ Dark Clouds ❖ References 2 / 22 Intro ❖ Intro ● Who am I? ❖ Chronology ❖ Chronology II ❖ Genealogy Tree ● What is the Auton Lab? ❖ General Limitations ❖ Scientific Computing ❖ Continuation ❖ misc issues ❖ NetBSD ❖ OpenBSD ❖ pf.conf and pfctl ❖ OpenBSD cons ❖ FreeBSD ❖ TrueOS ❖ TurnKey Appliance ❖ FreeNAS ❖ pfSense ❖ DragonFly BSD ❖ HAMMER ❖ Dark Clouds ❖ References 2 / 22 Intro ❖ Intro ● Who am I? ❖ Chronology ❖ Chronology II ❖ Genealogy Tree ● What is the Auton Lab? ❖ General Limitations ❖ Scientific ● Why don’t we just use SCS computing facilities? Computing ❖ Continuation ❖ misc issues ❖ NetBSD ❖ OpenBSD ❖ pf.conf and pfctl ❖ OpenBSD cons ❖ FreeBSD ❖ TrueOS ❖ TurnKey Appliance ❖ FreeNAS ❖ pfSense ❖ DragonFly BSD ❖ HAMMER ❖ Dark Clouds ❖ References 2 / 22 Intro ❖ Intro ● Who am I? ❖ Chronology ❖ Chronology II ❖ Genealogy Tree ● What is the Auton Lab? ❖ General Limitations ❖ Scientific ● Why don’t we just use SCS computing facilities? Computing ❖ Continuation ❖ misc issues ● How did -
Processes Process Structure
Processes Process structure The process structure contains: • Processes execute in user mode (application code) or kernel mode (operating system code). • Process identification (PID) • The user mode state consists of the processor registers • signal state and of the content of the memory segments. • timers: real-time and CPU-utilization counters • The kernel mode state consists of the processor registers • Pointers to the substructures and the information the kernel stores about the process. • The kernel state for each process is divided into several different data structures (fig. 4.1). • The top level data structures are the process structure and the user structure. • In old Unix systems the user structure contained data that was not needed when the process was swapped out. • In FreeBSD the user structure is used for only a couple of structures referenced from the process structure. • A new thread structure has been introduced in FreeBSD to keep information about a single thread. 1 2 Process structure, cont. Thread structure The thread structure contains the following categories of information: The process substructures (fig. 4.1) have the following categories of information: • Scheduling: for example thread priority • Thread state: (runnable, sleeping), and wait channel if • Process-group identification sleeping. • User credentials (UID, GID) • Machine state: the machine dependent thread information • Memory management • TCB (Thread Control Block): the user and kernel mode • File descriptors execution states including MMU registers • Resource accounting • Kernel stack: the per-thread execution stack for the kernel • Statistics • Signal actions • Thread structure Processes can be in any of the following states: NEW, NORMAL, or ZOMBIE. A process in NORMAL state can be RUNNABLE, SLEEPING or STOPPED. -
Commencement1990.Pdf (7.862Mb)
TheJohns Hopkins University Conferring of Degrees At the Close of the 1 14th Academic Year May 24, 1990 Digitized by the Internet Archive in 2012 with funding from LYRASIS Members and Sloan Foundation http://archive.org/details/commencement1990 Contents Order of Procession 1 Order of Events 2 Honorary Degree Citations 9 Academic Regalia 16 Awards 18 Honor Societies 22 Student Honors 25 Degree Candidates 28 Order of Procession MARSHALS Stephen R. Anderson Marion C. Panyan Andrew S. Douglas Peter B. Petersen Elliott W. Galkin Edward Scheinerman Grace E. Goodell Henry M. Seidel Sharon S. Krag Stella Shiber Bonnie J. Lake Susan Wolf Bruce D. Marsh Eric D. Young THE GRADUATES MARSHALS Jerome Kruger Dean W. Robinson THE FACULTIES to MARSHALS Frederic Davidson AJ.R. Russell-Wood THE DEANS OFFICERS OF THE UNIVERSITY THE TRUSTEES CHIEF MARSHAL Owen M. Phillips THE PRESIDENT OF THE JOHNS HOPKINS UNIVERSITY ALUMNI COUNCIL THE CHAPLAINS THE PRESENTERS OF THE HONORARY DEGREE CANDIDATES THE HONORARY DEGREE CANDIDATES THE INTERIM PROVOST OF THE UNIVERSITY THE GOVERNOR OF THE STATE OF MARYLAND THE CHAIRMAN OF THE BOARD OF TRUSTEES THE PRESIDENT OF THE UNIVERSITY - /- Order ofEvents Si even Muller President of the University, presiding * • 4 PRELUDE La Mourisque Tielman Susato (? -1561) Basse Dance Tielman Susato (? -1561) Two Ayres for Cornetts and Sagbuts JohnAdson (?- 1640) Sonata No. 22 Johann Pezel (1639-1694) » PROCESSIONAL The audience is requested to stand as the Academic Procession moves into the area and to remain standing after the Invocation. FESTIVAL MARCHES THE PRESIDENTS PROCESSION Fanfare Walter Piston (1894-1976) Pomp and Circumstance March No. -
Schedulers University of New Mexico
Schedulers University of New Mexico https://commons.wikimedia.org/wiki/ File:Simplified_Structure_of_the_Linux_Kern el.svg 2 University of New Mexico O(1) scheduler (older) Two arrays, switching between them is just changing a pointer Uses heuristics to try to know which processes are interactive Average sleep time https://en.wikipedia.org/wiki/O(1)_scheduler 3 University of New Mexico CFS scheduler (currently in Linux) Completely Fair Scheduler Red-black tree of execution to the nanosecond niffies Like weighted fair queuing for packet networks An ideal processor would share equally maximum execution time = time the process has been waiting to run / total number of processes https://en.wikipedia.org/wiki/Completely_Fair_Scheduler 4 University of New Mexico BFS (now MuQQS) Brain “Hug” Scheduler Specifically for desktops Weighted round-robin where the weights are based on some very complex formulae (see Wikipedia for details) No priority modification for sleep behavior Time slice = 6ms (human perception of jitter ≈ 7ms) Performs slightly better than CFS for <16 cores https://en.wikipedia.org/wiki/Brain_Fuck_Scheduler https://lwn.net/Articles/720227/ 5 University of New Mexico Windows NT through 10 ● Multilevel Feedback Queue (MLFQ) 6 University of New Mexico Mac OS X ● XNU is a mix of FreeBSD and Mach – Network, files, processes, POSIX interface, etc. come from FreeBSD – CPU scheduling, memory management, specialized IPC, etc. comes from Mach ● Round-robin and MLFQ schedulers 7 University of New Mexico IOS (i.e., iPhone)