Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures

Total Page:16

File Type:pdf, Size:1020Kb

Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures I Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures Richard Rashid, Avadis Tevanian, Michael Young, David Golub, Robert Baron, David Black, William Boloaky, and Jonathan Chew Department of Computer Science !iliii!i!i ¸ Carnegie Mellon University Pittsburgh, Pennsylvania 15213 Abstract Over the last two years CMU has been engaged in the development of a portable, multiprocessor operating system This paper describes the design and implementation of vir- called Mach. One of the goals of Mach has been to explore tual memory management within the CMU Mach Operating the relationship between hardware and software memory ar- System and the experiences gained by the Mach kernel group chitectures and to design a memory management system that in porting that system to a variety of architectures. As of this would be readily portable to multiprocessor computing en- writing, Maeh runs on more than half a dozen uniprocessors and multiprocessors including the VAX family of uniproces- gines as well as traditional uniprocessors. sors and multiprocessors, the IBM RT PC, the SUN 3, the Mach provides complete UNIX 4.3bsd compatibility while Encore MultiMax, the Sequent Balance 21000 and several significantly extending UNIX notions of virtual memory experimental computers. Although these systems vary con- management and inteerprocess communication [1]. Mach sup- siderably in the kind of hardware support for memory management they provide, the machine-dependent portion of ports: Mach virtual memory consists of a single code module and its * large, sparse virtual address spaces, related header file. This separation of software memory management from hardware support has been accomplished • copy-on-write virtual copy operations, without sacrificing system performance. In addition to im- proving portability, it makes possible a relatively unbiased • copy-on-write and read-write memory sharing examination of the pros and cons of various hardware between tasks, memory management schemes, especially as they apply to the support of multiprocessors. • memory mappedfiles and n user-provided backing store objects andpagers. 1. Introduction This has been accomplished without patterning Mach's in- While software designers are increasingly able to cope with ternal memory representation after any specific architecture. variations in instruction set architectures, operating system In fact, Math makes relatively few assumptions about avail- portability continues to suffer from a proliferation of memory able memory management hardware. The primary require- structures. UNIX systems have traditionally addressed the ment is an ability to handle and recover from page faults (for problem of VM portability by restricting the facilities some arbitrary page size). provided and basing implementations for new memory As of this writing, Math runs on more than half a dozen management architectures on versions already done for pre- uniprocessors and multiprocessors including the entire VAX vious systems. As a result, existing versions of UNIX, such family of uniprocessors and mulfiprocessors, the IBM RT PC, as Berkeley 4.3bsd, offer little in the way of virtual memory the SUN 3, the Encore MultiMax and the Sequent Balance management other than simple paging support. Versions of 21000. Implementations are in progress for several ex- Berkeley UNIX on non-VAX hardware, such as SunOS on perimental computers. Despite differences between supported the SUN 3 and ACIS 4.2 on the IBM RT PC, actually simu- architectures, the machine-dependent portion of Mach's vir- late internally the VAX memory mapping architecture -- in tual memory subsystem consists of a single code module and effect treating it as a machine-independent memory manage- its related header file. All information important to the ment specification. management of Mach virtual memory is maintained in machine-independent data structures and machine-dependent This xeseareh was sponsored by the Defense Advanced Research l:Xrojeels data structures contain only those mappings necessary to run- Agency (DOD), ARPA Order No. 4864, monitored by the Space and Naval ning the current mix of programs. Warfare Systems Command under contraeet N00039-85-C-1034. Permission to copy without fee all or part of this material is granted Mach's separation of software memory management from provided that the copies are not made or distributed for direct commercial hardware support has been accomplished without sacrificing advantage, the ACM copyright notice and the title of the publication and system performance. In several eases overall system perfor- Its date appear, and notice is given that copying Is by permission of the Association of Computing Machinery. To copy otherwise, or to republish, mance has measurably improved over existing UNIX im- requires a fee and/or specific permission. plementations. Moreover, this approach makes possible a 31 © 1987 ACM 0-89791-238-1/87/1000-0031 $00.75 I I relatively unbiased examination of the pros and cons of ferent classes of machines while providing a consistent inter- various hardware memory management schemes, especially face to all resources. The actual system running on any as they apply to the support of multiprocessors. This paper particular machine is thus more a function of its servers than describes the design and implementation of virtual memory its kernel. management within the CMU Mach Operating System and Traditionally, message based systems of this sort have the experiences gained by the Mach kernel group in porting operated at a distinct performance disadvantage to conven- that system to a variety of arChitectures. tionally implemented operating systems. The key to efficiency in Mach is the notion that virtual memory management can be 2. Mach Design integrated with a message-oriented communication facility. There are five basic Mach abstractions: This integration allows large amounts of data including whole 1. A task is an execution environment in which files and even whole address spaces to be sent in a single threads may run. It is the basic unit of resource message with the efficiency of simple memory remapping. allocation. A task includes a paged virtual ad- 2.1. Basle VM Operations dress space and protected access to system Each Mach task possesses a large address space that consists resources (such as processors, port capabilities of a series of mappings between ranges of memory addres- and virtual memory). A task address space con- sible to the task and memory objects. The size of a Mach sists of an ordered collection of mappings to address space is limited only by the addressing restrictions of memory objects (see below). The UNIX notion the underlying hardware. An RT PC task, for example, can of a process is, in Mach, represented by a task address a full 4 gigabytes of memory under Mach I while the with a single thread of control. VAX architecture allows at most 2 gigabytes of user address 2. A thread is the basic unit of CPU utilization. It space. A task can modify its address space in several ways, is roughly equivalent to an independent program including: counter operating within a task. All threads allocate a region of virtual memory on a page within a task share access to all task resources. boundary, 3. A port is a communication channel -- logically a ® deallocate a region ofvirtucd memory, queue for messages protected by the kernel. • set the protection status of a region of virtual Ports are the reference objects of the Mach memory, design. They are used in much the same way that object references could be used in an object • specify the inheritance of a region of virtual oriented system. Send and Receive are the fun- memory and damental primitive operations on ports. ® create and manage a memory object that can 4. A message is a typed collection of data objects then be mapped into the address space of another used in conmmnication between threads. Mes- task. sages may be of any size and may contain The only restriction imposed by Mach on the nature of the pointers and typed capabilities for ports. regions that may be specified for virtual memory operations is that they must be aligned on system page boundaries. The 5. A memory object is collection of data provided definition of page size is a boot time system parameter and and managed by a server which can be mapped can be any power of two multiple of the hardware page size. into the address space of a task. Table 2-1 fists the set of virtual memory operations that can Operations on objects other than messages are performed by be performed on a task. sending messages to ports. In this way, Mach permits system Both copy-on-write and read/write sharing of memory are services and resources to be managed by user-state tasks. For permitted between Mach tasks. Copy-on-write sharing be- example, the Mach kernel itself can be considered a task with tween unrelated tasks is typically the result of large message multiple threads of control. The kernel task acts as a server transfers. An entire address space may be sent in a single which in turn implements tasks, threads and memory objects. message with no actual data copy operations performed. The act of creating a task, a thread or a memory object, Read/write shared memory can be created by allocating a returns access rights to a port which represents the new object memory region and setting its inheritance attribute. Sub- and can be used to manipulate it. Incoming messages on such sequently created child tasks share the memory of their parent a port results in an operation performed on the object it according to its inheritance value. Inheritance may be represents. specified as shared, copy or none, and may be specified on a The indirection provided by message passing allows objects per-page basis. Pages specified as shared, are shared for read to be arbitrarily placed in the network (either within a mul- and write.
Recommended publications
  • 微软郑宇:大数据解决城市大问题 18 更智能的家庭 19 微博拾粹 Weibo Highlights
    2015年1月 第33期 P7 WWT: 数字宇宙,虚拟星空 P16 P12 带着微软坐过山车 P4 P10 1 微软亚洲研究院 2015年1月 第33期 以“开放”和“极客创新”精神铸造一个“新”微软 3 第十六届“二十一世纪的计算”学术研讨会成功举办 4 微软与清华大学联合举办2014年微软亚太教育峰会 5 你还记得一夜暴红的机器人小冰吗? 7 Peter Lee:带着微软坐过山车 10 计算机科学家周以真专访 12 WWT:数字宇宙,虚拟星空 16 微软郑宇:大数据解决城市大问题 18 更智能的家庭 19 微博拾粹 Weibo Highlights @微软亚洲研究院 官方微博精彩选摘 20 让虚拟世界更真实 22 4K时代,你不能不知道的HEVC 25 小冰的三项绝技是如何炼成的? 26 科研伴我成长——上海交通大学ACM班学生在微软亚洲研究院的幸福实习生活 28 年轻的心与渐行渐近的梦——记微软-斯坦福产品设计创新课程ME310 30 如何写好简历,找到心仪的暑期实习 32 微软研究员Eric Horvitz解读“人工智能百年研究” 33 2 以“开放”和“极客创新”精神 铸造一个“新”微软 爆竹声声辞旧岁,喜气洋“羊”迎新年。转眼间,这一 年的时光即将伴着哒哒的马蹄声奔驰而去。在这辞旧迎新的 时刻,我们怀揣着对技术改变未来的美好憧憬,与所有为推 动互联网不断发展、为人类科技进步不断奋斗的科技爱好者 一起,敲响新年的钟声。挥别2014,一起期盼那充满希望 的新一年! 即将辞行的是很不平凡的一年。这一年的互联网风起云 涌,你方唱罢我登场,比起往日的峥嵘有过之而无不及:可 穿戴设备和智能家居成为众人争抢的高地;人工智能在逐渐 触手可及的同时又引起争议不断;一轮又一轮创业大潮此起 彼伏,不断有优秀的新公司和新青年展露头角。这一年的微 软也在众人的关注下发生着翻天覆地的变化:第三任CEO Satya Nadella屡新,确定以移动业务和云业务为中心 的公司战略,以开放的姿态拥抱移动互联的新时代,发布新一代Windows 10操作系统……于我个人而言,这一 年,就任微软亚太研发集团主席开启了我20年微软旅程上的新篇章。虽然肩上的担子更重了,但心中的激情却 丝毫未减。 “开放”和“极客创新”精神是我们在Satya时代看到微软文化的一个演进。“开放”是指不固守陈规,不囿 于往日的羁绊,用户在哪里需要我们,微软的服务就去哪里。推出Office for iOS/Android,开源.Net都是“开放” 的“新”微软对用户做出的承诺。关于“极客创新”,大家可能都已经听说过“车库(Garage)”这个词了,当年比 尔∙盖茨最早就是在车库里开始创业的。2014年,微软在全球范围内举办了“极客马拉松大赛(Hackthon)”,并鼓 励员工在业余时间加入“微软车库”项目,将自己的想法变为现实。这一系列的举措都是希望激发微软员工的“极 客创新”精神,我们也欣喜地看到变化正在微软内部潜移默化地进行着。“微软车库”目前已经公布了一部分有趣 的项目,我相信,未来还会有更多让人眼前一亮的创新。 2015年,我希望微软亚洲研究院和微软亚太研发集团的同事能够保持和发扬“开放”和“极客创新”的精 神。我们一起铸造一个“新”微软,为用户创造更多的惊喜! 微软亚洲研究院院长 3 第十六届“二十一世纪的计算”学术研讨会成功举办 2014年10月29日由微软亚洲研究院与北京大学联合主办的“二 形图像等领域的突破:微软语音助手小娜的背后,蕴藏着一系列人 十一世纪的计算”大型学术研讨会,在北京大学举行。包括有“计 工智能技术;大数据和机器学习技术帮助我们更好地认识城市和生 算机科学领域的诺贝尔奖”之称的图灵奖获得者、来自微软及学术
    [Show full text]
  • Operating System Support for Redundant Multithreading
    Operating System Support for Redundant Multithreading Dissertation zur Erlangung des akademischen Grades Doktoringenieur (Dr.-Ing.) Vorgelegt an der Technischen Universität Dresden Fakultät Informatik Eingereicht von Dipl.-Inf. Björn Döbel geboren am 17. Dezember 1980 in Lauchhammer Betreuender Hochschullehrer: Prof. Dr. Hermann Härtig Technische Universität Dresden Gutachter: Prof. Frank Mueller, Ph.D. North Carolina State University Fachreferent: Prof. Dr. Christof Fetzer Technische Universität Dresden Statusvortrag: 29.02.2012 Eingereicht am: 21.08.2014 Verteidigt am: 25.11.2014 FÜR JAKOB *† 15. Februar 2013 Contents 1 Introduction 7 1.1 Hardware meets Soft Errors 8 1.2 An Operating System for Tolerating Soft Errors 9 1.3 Whom can you Rely on? 12 2 Why Do Transistors Fail And What Can Be Done About It? 15 2.1 Hardware Faults at the Transistor Level 15 2.2 Faults, Errors, and Failures – A Taxonomy 18 2.3 Manifestation of Hardware Faults 20 2.4 Existing Approaches to Tolerating Faults 25 2.5 Thesis Goals and Design Decisions 36 3 Redundant Multithreading as an Operating System Service 39 3.1 Architectural Overview 39 3.2 Process Replication 41 3.3 Tracking Externalization Events 42 3.4 Handling Replica System Calls 45 3.5 Managing Replica Memory 49 3.6 Managing Memory Shared with External Applications 57 3.7 Hardware-Induced Non-Determinism 63 3.8 Error Detection and Recovery 65 4 Can We Put the Concurrency Back Into Redundant Multithreading? 71 4.1 What is the Problem with Multithreaded Replication? 71 4.2 Can we make Multithreading
    [Show full text]
  • High Velocity Kernel File Systems with Bento
    High Velocity Kernel File Systems with Bento Samantha Miller, Kaiyuan Zhang, Mengqi Chen, and Ryan Jennings, University of Washington; Ang Chen, Rice University; Danyang Zhuo, Duke University; Thomas Anderson, University of Washington https://www.usenix.org/conference/fast21/presentation/miller This paper is included in the Proceedings of the 19th USENIX Conference on File and Storage Technologies. February 23–25, 2021 978-1-939133-20-5 Open access to the Proceedings of the 19th USENIX Conference on File and Storage Technologies is sponsored by USENIX. High Velocity Kernel File Systems with Bento Samantha Miller Kaiyuan Zhang Mengqi Chen Ryan Jennings Ang Chen‡ Danyang Zhuo† Thomas Anderson University of Washington †Duke University ‡Rice University Abstract kernel-level debuggers and kernel testing frameworks makes this worse. The restricted and different kernel programming High development velocity is critical for modern systems. environment also limits the number of trained developers. This is especially true for Linux file systems which are seeing Finally, upgrading a kernel module requires either rebooting increased pressure from new storage devices and new demands the machine or restarting the relevant module, either way on storage systems. However, high velocity Linux kernel rendering the machine unavailable during the upgrade. In the development is challenging due to the ease of introducing cloud setting, this forces kernel upgrades to be batched to meet bugs, the difficulty of testing and debugging, and the lack of cloud-level availability goals. support for redeployment without service disruption. Existing Slow development cycles are a particular problem for file approaches to high-velocity development of file systems for systems.
    [Show full text]
  • IBM RTC PC | User Setup Guide and Options
    Personal Canputer Hardware Reference Library IBM RT PC User Setup Guide SA23-2608-0 c c The following statement applies to this IBM product. The statement for other IBM products intended for use with this product will appear in their accompanying manuals. Federal Communications Commission (FCC) Statement Warning: This equipment generates, uses, and can radiate radio frequency energy and if not installed and used in accordance with the instructions manual, may cause interference to radio communications. It has been tested and found to comply with the limits for a Class A computing device pursuant to Subpart J of Part 15 of FCC Rules, which are designed to provide reasonable protection against such interference when operated in a commercial environment. Operation of this equipment in a residential area is likely to cause interference in which case the user at his own expense will be required to take whatever measures may be required to correct the interference. Instructions to User: Properly shielded and grounded cables and connectors must be used for connection to peripherals in order to meet FCC emission limits. Proper cables are available from IBM authorized dealers. IBM is not responsible for any radio or television interference caused by using other than recommended cables or by unauthorized modifications to this equipment. It is the responsibility of the user to correct such interference. CAUTION: This product is equipped with a 3-wire power cord and plug for the user's safety. Use this power cord in conjunction with a properly grounded electrical outlet to avoid electrical shock. Third Edition (June 1988) Thismajor revision obsoletes previous editions of the IBM RT PC User Setup Guide.
    [Show full text]
  • Building a Better Mousetrap
    ISN_FINAL (DO NOT DELETE) 10/24/2013 6:04 PM SUPER-INTERMEDIARIES, CODE, HUMAN RIGHTS IRA STEVEN NATHENSON* Abstract We live in an age of intermediated network communications. Although the internet includes many intermediaries, some stand heads and shoulders above the rest. This article examines some of the responsibilities of “Super-Intermediaries” such as YouTube, Twitter, and Facebook, intermediaries that have tremendous power over their users’ human rights. After considering the controversy arising from the incendiary YouTube video Innocence of Muslims, the article suggests that Super-Intermediaries face a difficult and likely impossible mission of fully servicing the broad tapestry of human rights contained in the International Bill of Human Rights. The article further considers how intermediary content-control pro- cedures focus too heavily on intellectual property, and are poorly suited to balancing the broader and often-conflicting set of values embodied in human rights law. Finally, the article examines a num- ber of steps that Super-Intermediaries might take to resolve difficult content problems and ultimately suggests that intermediaries sub- scribe to a set of process-based guiding principles—a form of Digital Due Process—so that intermediaries can better foster human dignity. * Associate Professor of Law, St. Thomas University School of Law, inathen- [email protected]. I would like to thank the editors of the Intercultural Human Rights Law Review, particularly Amber Bounelis and Tina Marie Trunzo Lute, as well as symposium editor Lauren Smith. Additional thanks are due to Daniel Joyce and Molly Land for their comments at the symposium. This article also benefitted greatly from suggestions made by the participants of the 2013 Third Annual Internet Works-in-Progress conference, including Derek Bambauer, Marc Blitz, Anupam Chander, Chloe Georas, Andrew Gilden, Eric Goldman, Dan Hunter, Fred von Lohmann, Mark Lemley, Rebecca Tushnet, and Peter Yu.
    [Show full text]
  • Important OS Papers
    AppendixC Important OS papers This Appendix contains important operating system papers. What makes them important? There are a variety of ways for a paper to get included in this list. Some papers contain fundamental breakthroughs in operating system design or specific operating system functional areas. Others describe research that lead the way for new areas of innovation. Some describe promising research that has not yet borne fruit. Some provided a distillation of previous work, but that distillation resulted in better understanding of operating system functionality that lead to new research or solutions. The list of important papers here is not all inclusive, of course, but tries to be a fundamental reading list for those interested in core operating systems research publications. • Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung “The Google File System”, Proceedings of the Summer USENIX Conference (1986). • S. Baskiyar, and N. Meghanathan “A Survey of Contemporary Real-time Operating Systems” Informatica (2005). • Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauery, Ian Pratt, Andrew Warfield “Xen and the Art of Virtuaization”, Proceedings of the 19th ACM Symposium on Operating Systems Principles (2003). • Mahadev Satyanarayanan “Mobile Computing: The Next Decade”, Pro- ceedings of the 1st ACM Workshop on Mobile Cloud Computing and Services: Social Networks and Beyond (2010). • Andrew D. Birrell “An Introduction to Programming with Threads”, Research Report 35: Digital Equipment Corporation Systems Research (1989). • Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, and Henry M. Levy “Scheduler Activations”, Proceedings of the 13th ACM Symposium on Operating Systems Principles (1991). • Thomas W.
    [Show full text]
  • Large Scale Malicious Code: a Research Agenda ∗†
    Large Scale Malicious Code: A Research Agenda ∗† Nicholas Weaver Vern Paxson Stuart Staniford Robert Cunningham Silicon Defense & ICSI Center for Silicon Defense MIT Lincoln UC Berkeley Internet Research Laboratory 1 Executive Summary attacks on the Internet infrastructure. What makes the threat particularly serious is that the resources required The reliable operation of our networked computing infras- to launch such an attack are comparatively small: a few tructure is essential to many governmental and corporate skilled programmers and a small group of test machines. activities. Unfortunately, this infrastructure is highly vul- There are several strategies possible, including active nerable to automated attacks by computer worms: pro- scanning, topologically-aware, contagion, metaserver, grams that propagate themselves to all vulnerable ma- and flash attacks, which can’t be detected or responded chines on the Internet. Such wide-scale malicious code to by current systems. There are numerous possible pay- is a major threat. loads, such as data erasers, hardware-damaging routines, Previous worms, such as Code Red[25] and Nimda[12], Internet-scale denial-of-service attacks, or widespread es- were relatively minor: they contained no overtly mali- pionage, which could significantly affect the U.S. econ- cious payload designed to affect the infected machine and omy if contained in a widespread worm. attacked comparatively well-known vulnerabilities. Even If our nation wishes to rely upon commodity networked so, they were moderately disruptive and highlighted the computers for our day to day business, governmental, and systemic vulnerabilities as the worms infected hundreds military operations, we need to invest in several avenues of thousands of machines in a few hours.
    [Show full text]
  • Microsoft from Wikipedia, the Free Encyclopedia Jump To: Navigation, Search
    Microsoft From Wikipedia, the free encyclopedia Jump to: navigation, search Coordinates: 47°38′22.55″N 122°7′42.42″W / 47.6395972°N 122.12845°W / 47.6395972; -122.12845 Microsoft Corporation Public (NASDAQ: MSFT) Dow Jones Industrial Average Type Component S&P 500 Component Computer software Consumer electronics Digital distribution Computer hardware Industry Video games IT consulting Online advertising Retail stores Automotive software Albuquerque, New Mexico Founded April 4, 1975 Bill Gates Founder(s) Paul Allen One Microsoft Way Headquarters Redmond, Washington, United States Area served Worldwide Key people Steve Ballmer (CEO) Brian Kevin Turner (COO) Bill Gates (Chairman) Ray Ozzie (CSA) Craig Mundie (CRSO) Products See products listing Services See services listing Revenue $62.484 billion (2010) Operating income $24.098 billion (2010) Profit $18.760 billion (2010) Total assets $86.113 billion (2010) Total equity $46.175 billion (2010) Employees 89,000 (2010) Subsidiaries List of acquisitions Website microsoft.com Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions. Established on April 4, 1975 to develop and sell BASIC interpreters for the Altair 8800, Microsoft rose to dominate the home computer operating system (OS) market with MS-DOS in the mid-1980s, followed by the Microsoft Windows line of OSes. Microsoft would also come to dominate the office suite market with Microsoft Office. The company has diversified in recent years into the video game industry with the Xbox and its successor, the Xbox 360 as well as into the consumer electronics market with Zune and the Windows Phone OS.
    [Show full text]
  • Spatial Computation
    Spatial Computation Mihai Budiu December 2003 CMU-CS-03-217 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy Thesis Committee: Seth Copen Goldstein, Chair Peter Lee Todd Mowry Babak Falsafi, ECE Nevin Heinze, Agere Systems This research was sponsored by the Defense Advanced Projects Agency (DARPA) under US Army contract no. DABT6396C0083, DARPA under US Navy grant no. N000140110659 via Pennsylvania State University and via Hewlett-Packard (HP) Laboratories, the National Science Foundation (NSF) under grant no. CCR-0205523 and no. CCR-9876248, and by generous donations from the Altera Corporation and HP. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of the sponsors or any other entity. Keywords: spatial computation, optimizing compilers, internal representation, dataflow machines, asyn- chronous circuits, reconfigurable computing, power-efficient computation Abstract This thesis presents a compilation framework for translating ANSI C programs into hardware dataflow ma- chines. The framework is embodied in the CASH compiler, a Compiler for Application-Specific Hardware. CASH generates asynchronous hardware circuits that directly implement the functionality of the source program, without using any interpretative structures. This style of computation is dubbed “Spatial Compu- tation.” CASH relies extensively on predication and speculation for building efficient hardware circuits. The first part of this document describes Pegasus, the internal representation of CASH, and a series of novel program transformations performed by CASH. The most notable of these are a new optimal register- promotion algorithm and partial redundancy elimination for memory accesses based on predicate manipu- lation.
    [Show full text]
  • ISSUE on OPERATINGSYSTEMSSUPPORTFOR DATAMANAGEMENT Editor-In-Chief,Databaseengineering Chairperson, IC Dr
    SEPTEMBER1986 VOL.9NO.3 a quarLerlybulletin of the IEEEcomputersociety technicalcommittee Database Engineering CONTENTS Chairman’sMessage 1 S. Jajodia Changes to the EditorialStaff of DatabaseEngineering 2 W. Kim Letterfrom the Editor 3 H. Boral An OperatingSystem for a DatabaseMachine 5 C. Nyberg TheJASMINKernel as a DataManagerBase 9 W. K. Wlkinson, M-YLai Supporting a DatabaseSystem on Symbolics LispMachines 17 H-i Chou, J. Garza N. Ba/Iou The CamelotProject 23 A. Spector, J. Bloch, 0. Daniels, R. Draves, D. Duchamp, J. Eppinger, S. Menees, 0. Thompson Getting the OperatingSystem Out of the Way 35 J. Moss OperatingSystemSupport for DataManagement 43 M. Stonebraker, A. Kumar Calls for Papers 52 SPECIALISSUE ON OPERATINGSYSTEMSSUPPORTFOR DATAMANAGEMENT Editor-in-Chief,DatabaseEngineering Chairperson, IC Dr. Won Kim Dr. SushilJajodia MCC NavalResearch Lab. 3500WestBalconesCenterDrive Washington, D.C. 20375-5000 Austin, TX 78759 (202)767-3596 (512)338-3439 ViceChairperson, TC Associate Database Editors, Engineering Prof. ArthurKeller Dr. HaranBoral Dept. of ComputerSciences MCC University of Texas 3500WestBalconesCenterDrive Austin, TX 78712-1188 Austin, TX 78759 (512)471-7316 (512)338-3469 Prof. MichaelCarey Treasurer, TC ComputerSciencesDepartment Prof. LeszekLilien University of Wisconsin Dept. of ElectricalEngineering Madison, WI 53706 and ComputerScience (608)262-2252 University of Illinois Dr. C. Mohan Chicago, IL 60680 IBM AlmadenResearchCenter (312)996-0827 650 HarryRoad San Jose, CA 95 120-6099 Secretary, TC (408)927-1733 Dr. Richard L. Shuey Dr. SunilSarin 2338Rosendale Rd. ComputerCorporation of America Schenectady, NY 12309 4 CambridgeCenter (518)374-5684 Cambridge, MA 02142 (617)492-8860 Prof.YannisVassiliou GraduateSchool of BusinessAdministration NewYorkUniversity 90 TrinityPlace NewYork, NY (212)598-7536 DatabaseEngineeringBulletin is a quarterlypublication of Memoership in the DatabaseEngineeringTechnicalCom the IEEEComputerSocietyTechnicalCommittee on Database mittee is open to individualswhodemonstratewillingness to Engineering.
    [Show full text]
  • Chapter 17 Structural Dynamics Research Corporation
    Chapter 17 Structural Dynamics Research Corporation Structural Dynamics Research Corporation (SDRC) was founded in 1967 by Dr. Jason (Jack) Lemon, Albert Peter, Robert Farell, Jim Sherlock and several others. Lemon and his partners had previously held teaching and research positions in the University of Cincinnati’s Mechanical Engineering Department. Initially, this was a mechanical engineering consulting company that over the years made the transition to being a full- fledged mechanical design software company. One of the company’s early consulting assignments was for U. S. Steel and it was so impressed by the work SDRC did that it decided to invest in the company and for a time held about a 40 percent ownership position. The relationship with U.S. Steel was far more than simply a financial investment. SDRC’s engineers worked closely with U. S. Steel’s sales and marketing people to create new markets for steel. One example was the machine tool industry which had traditionally used castings for the base of their machine tools. U.S. Steel wanted to sell these companies plate steel that could be welded into the shapes needed. SDRC’s engineers developed the analytical techniques that proved to these prospective customers that the steel plate bases were an acceptable alternative. This relationship generated numerous leads for SDRC’s seminars on advanced engineering design and analysis technologies. U.S. Steel also had two people on the company’s board of directors during this period. Dr. Russ Henke, who was also a University of Cincinnati graduate, joined SDRC in 1969 as director of computer operations, at a time when the company had about 20 employees.
    [Show full text]
  • Application Initialization at Build Time
    Initialize Once, Start Fast: Application Initialization at Build Time CHRISTIAN WIMMER, Oracle Labs, USA CODRUT STANCU, Oracle Labs, USA PETER HOFER, Oracle Labs, Austria VOJIN JOVANOVIC, Oracle Labs, Switzerland PAUL WÖGERER, Oracle Labs, Austria PETER B. KESSLER, Oracle Labs, USA OLEG PLISS, Oracle Labs, USA THOMAS WÜRTHINGER, Oracle Labs, Switzerland Arbitrary program extension at run time in language-based VMs, e.g., Java’s dynamic class loading, comes at a startup cost: high memory footprint and slow warmup. Cloud computing amplifies the startup overhead. Microservices and serverless cloud functions lead to small, self-contained applications that are started often. Slow startup and high memory footprint directly affect the cloud hosting costs, and slow startup canalso break service-level agreements. Many applications are limited to a prescribed set of pre-tested classes, i.e., use a closed-world assumption at deployment time. For such Java applications, GraalVM Native Image offers fast startup and stable performance. GraalVM Native Image uses a novel iterative application of points-to analysis and heap snapshotting, followed by ahead-of-time compilation with an optimizing compiler. Initialization code can run at build time, i.e., executables can be tailored to a particular application configuration. Execution at run time starts witha pre-populated heap, leveraging copy-on-write memory sharing. We show that this approach improves the startup performance by up to two orders of magnitude compared to the Java HotSpot VM, while preserving peak performance. This allows Java applications to have a better startup performance than Go applications and the V8 JavaScript VM. CCS Concepts: · Software and its engineering → Runtime environments.
    [Show full text]