Operating System Support for Redundant Multithreading

Total Page:16

File Type:pdf, Size:1020Kb

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 Deterministic? 74 4.3 Replication Using Lock-Based Determinism 79 4.4 Reliability Implications of Multithreaded Replication 92 6 BJÖRN DÖBEL 5 Evaluation 97 5.1 Methodology 97 5.2 Error Coverage and Detection Latency 98 5.3 Runtime and Resource Overhead 109 5.4 Implementation Complexity 121 5.5 Comparison with Related Work 122 6 Who Watches the Watchmen? 127 6.1 The Reliable Computing Base 127 6.2 Case Study #1: How Vulnerable is the Operating System? 131 6.3 Case Study #2: Mixed-Reliability Hardware Platforms 139 6.4 Case Study #3: Compiler-Assisted RCB Protection 146 7 Conclusions and Future Work 149 7.1 OS-Assisted Replication 149 7.2 Directions for Future Research 151 8 Bibliography 163 1 Introduction Computer systems fail every day, destroying personal data, causing economic loss and even threatening users’ lives. The reasons for such failures are manifold, ranging from environmental hazards (e.g., a fire breaking out in a data center) to programming errors (e.g., invalid pointer dereferences in unsafe programming languages), as well as defective hardware components (e.g., a hard disk returning erroneous data when reading). A large fraction of these failures results from programming mistakes.1 1 Steve McConnell. Code Complete: A Prac- This observation triggered a large body of research related to improving tical Handbook of Software Construction. Microsoft Press, Redmond, WA, 2 edition, 2 software quality, ranging from static code analysis to formally verified 2004 operating system kernels.3 However, even if the combined solutions at some 2 Dawson Engler and David Yu et al. Chen. Bugs as Deviant Behavior: A General Ap- point lead to a situation where software is fault-free, their assumptions only proach to Inferring Errors in Systems Code. hold if we can trust in hardware to function correctly. In Symposium on Operating Systems Princi- From a hardware development perspective, Moore’s Law4 indicates a dou- ples, SOSP’01, pages 57–72, Banff, Alberta, Canada, 2001. ACM bling of transistor counts in modern microprocessors roughly every two years. 3 Gerwin Klein, Kevin Elphinstone, Ger- While the law started off as a prediction, it is today used by hardware vendors not Heiser, June Andronick, David Cock, as a means to establish product release cycles, research, and development Philip Derrin, Dhammika Elkaduwe, Kai En- gelhardt, Rafal Kolanski, Michael Norrish, goals. This has turned Moore’s Law into a self-fulfilling prophecy. Increasing Thomas Sewell, Harvey Tuch, and Simon the number of transistors enables to integrate more and more components into Winwood. seL4: Formal Verification of an OS Kernel. In Symposium on Operating Sys- a single chip. This permits the addition of more processors, larger caches, as tems Principles, SOSP’09, pages 207–220, well as specialized functional units, such as on-chip graphics processors. Big Sky, MT, USA, October 2009. ACM While transistor counts increase, the available chip area does not. Emerging 4 Gordon E. Moore. Cramming More Compo- nents Onto Integrated Circuits. Electronics, technologies, such as three-dimensional stacking of transistors try to address 38(8), 1965 5 this problem. However, the standard way of solving this problem in practical 5 Dae Hyun Kim et al. 3D-MAPS: 3D Mas- systems is to decrease the size of individual transistors by applying more sively Parallel Processor With Stacked Mem- ory. In Solid-State Circuits Conference Di- fine-grained production processes. gest of Technical Papers (ISSCC), 2012 IEEE Unfortunately, hardware components are exposed to energetic stress caused International, pages 188–190, 2012 by radiation, thermal effects, energy fluctuations, and mechanical force. As 6 Sherkar Borkar. Designing Reliable Sys- I will outline in Chapter 2, hardware vendors spend significant effort in tems From Unreliable Components: The Challenges of Transistor Variability and keeping the failure probability of their components below certain thresholds. Degradation. IEEE Micro, 25(6):10 – 16, However, this effort is becoming increasingly difficult as hardware structure 2005 sizes shrink, because smaller transistors are more vulnerable to the effects 7 Jörg Henkel, Lars Bauer, Nikil Dutt, Puneet 6 Gupta, Sani Nassif, Muhammad Shafique, previously mentioned. Mehdi Tahoori, and Norbert Wehn. Reliable This increased vulnerability accounts for an increased amount of inter- On-chip Systems in the Nano-Era: Lessons mittent (or soft) hardware faults.7 In contrast to permanent faults, which Learnt and Future Trends. In Annual Design Automation Conference, DAC ’13, pages constitute a constant malfunction of a component, intermittent faults occur 99:1–99:10, Austin, Texas, 2013. ACM and vanish seemingly randomly during execution time. This randomness 8 James F. Ziegler and William A. Lanford. 8 Effect of Cosmic Rays on Computer Memo- stems from the physical effects mentioned above. Soft errors are often tran- ries. Science, 206(4420):776–788, 1979 8 BJÖRN DÖBEL sient, which means they are only visible for a limited period of time before the affected component returns to a correct state. As an example, consider a bit in memory that flips due to a cosmic ray strike: Reading this bit will deliver an erroneous value until the containing memory word is later overwritten with a new datum. 9 Timothy J. Slegel, Robert M. Averill III, Fault tolerance mechanisms to deal with hardware errors have been devised Mark A. Check, Bruce C. Giamei, Barry W. at both hardware and software levels. While lower-level hardware components Krumm, Christopher A. Krygowski, Wen H. Li, John S. Liptay, John D. MacDougall, are suitable to detect and correct a large number of these errors, they do not Thomas J. McPherson, Jennifer A. Navarro, possess the necessary system knowledge to do so efficiently. For instance, Eric M. Schwarz, Kevin Shum, and Charles F. 9 Webb. IBM’s S/390 G5 Microprocessor De- IBM’s S390 processors provide redundancy in the form of lockstepping. sign. IEEE Micro, 19(2):12–23, 1999 However, this effort may not be necessary for all applications, because some software can protect itself, for instance using resilient programming tech- 10 Andrew M. Tyrrell. Recovery Blocks and niques.10 In such cases, the system could better use the additional hardware Algorithm-Based Fault Tolerance. In EU- for computing purposes. ROMICRO 96. Beyond 2000: Hardware and Software Design Strategies, pages 292–299, Existing software-level solutions often make assumptions about how de- 1996 velopers write software. For instance, they may require use of specific pro- 11 Jim Gray. Why Do Computers Stop and gramming models, such as process pairs.11 Other solutions apply specific What Can Be Done About It? In Symposium compiler techniques for fault tolerance.12 These software techniques trade on Reliability in Distributed Software and Database Systems, pages 3–12, 1986 general applicability for fault tolerance. 12 Semeen Rehman, Muhammad Shafique, The operating system bridges the gap between hardware and software. and Jörg Henkel. Instruction Scheduling for In this thesis I therefore evaluate whether we can strike a balance between Reliability-Aware Compilation. In Annual Design Automation Conference, DAC ’12, flexibility and generality by implementing fault tolerance as an operating pages 1292–1300, San Francisco, California, system service. 2012. ACM 1.1 Hardware meets Soft Errors 13 Daniel Lyons. Sun Screen. Forbes Mag- Sun acknowledged soft errors to be the cause for server crashes in 2000,13 azine, November 2000, accessed on April reportedly costing the company millions of dollars to replace the affected 22nd 2013, mirror: http://tudos.org/ ~doebel/phd/forbes2000sun components. Anecdotal evidence of soft errors affecting today’s systems can 14 Nelson Elhage. Attack of the be found across the internet.14 In Section 2.1 I will give a more thorough Cosmic Rays! KSPlice Blog, 2010, overview of scientific studies investigating causes and consequences of such https://blogs.oracle.com/ksplice/ entry/attack_of_the_cosmic_rays1, hardware errors. accessed on April 22nd 2013 Not all consequences of a soft error may become immediately visible as a fault. As I will describe in Chapter 2, these errors can also lead to erratic failures: the affected system continues to provide a service and simply generates wrong results. Such behavior also opens up new windows of security vulnerabilities. Dinaburg presented such a vulnerability as an experiment at BlackHat 2011: The authors registered 30 domain names that were one bit off popular domains, but that were not susceptible to be plain typing errors made by users.
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]
  • 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]
  • Project-Team REGAL
    IN PARTNERSHIP WITH: CNRS Université Pierre et Marie Curie (Paris 6) Activity Report 2013 Project-Team REGAL Large-Scale Distributed Systems and Applications IN COLLABORATION WITH: Laboratoire d’informatique de Paris 6 (LIP6) RESEARCH CENTER Paris - Rocquencourt THEME Distributed Systems and middleware Table of contents 1. Members :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 1 2. Overall Objectives :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 2 2.1. Overall Objectives2 2.2. Highlights of the Year2 3. Research Program :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 3 3.1.1. Modern computer systems are increasingly parallel and distributed.3 3.1.2. Multicore architectures are everywhere.3 4. Software and Platforms ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 4 4.1. Coccinelle 4 4.2. SwiftCloud 4 4.3. JESSY 4 4.4. Java and .Net runtimes for LLVM5 5. New Results :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 5 5.1. Introduction 5 5.2. Distributed algorithms for dynamic networks5 5.2.1. Mutual Exclusion and Failure Detection.6 5.2.2. Self-Stabilization and Self-* Services.6 5.2.3. Dissemination and Data Finding in Large Scale Systems.6 5.2.4. Peer certification.7 5.3. Management of distributed data7 5.3.1. Long term durability7 5.3.2. Adaptative replication8 5.3.3. Strong consistency8 5.3.4. Distributed Transaction Scheduling9 5.3.5. Eventual consistency9 5.3.6. Mixing commutative and non-commutative updates: reservations9 5.4. Performance and Robustness of Systems Software in Multicore Architectures 10 5.4.1. Managed Runtime Environments 10 5.4.2. System software robustness 10 5.4.3. Domain-specific languages for systems software 11 6. Bilateral Contracts and Grants with Industry ::::::::::::::::::::::::::::::::::::::::::::: 11 6.1. Bilateral Contracts with Industry 11 6.2. Bilateral Grants with Industry 11 7.
    [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]
  • Linux Kernel User Documentation V4.20.0
    usepackagefontspec setsansfontDejaVu Sans setromanfontDejaVu Serif setmonofontDejaVu Sans Mono Linux Kernel User Documentation v4.20.0 The kernel development community 1 16, 2019 Contents 1 Linux kernel release 4.x <http://kernel.org/> 3 2 The kernel’s command-line parameters 9 3 Linux allocated devices (4.x+ version) 109 4 L1TF - L1 Terminal Fault 171 5 Reporting bugs 181 6 Security bugs 185 7 Bug hunting 187 8 Bisecting a bug 193 9 Tainted kernels 195 10 Ramoops oops/panic logger 197 11 Dynamic debug 201 12 Explaining the dreaded “No init found.” boot hang message 207 13 Rules on how to access information in sysfs 209 14 Using the initial RAM disk (initrd) 213 15 Control Group v2 219 16 Linux Serial Console 245 17 Linux Braille Console 247 18 Parport 249 19 RAID arrays 253 20 Kernel module signing facility 263 21 Linux Magic System Request Key Hacks 267 i 22 Unicode support 273 23 Software cursor for VGA 277 24 Kernel Support for miscellaneous (your favourite) Binary Formats v1.1 279 25 Mono(tm) Binary Kernel Support for Linux 283 26 Java(tm) Binary Kernel Support for Linux v1.03 285 27 Reliability, Availability and Serviceability 293 28 A block layer cache (bcache) 309 29 ext4 General Information 319 30 Power Management 327 31 Thunderbolt 349 32 Linux Security Module Usage 353 33 Memory Management 369 ii Linux Kernel User Documentation, v4.20.0 The following is a collection of user-oriented documents that have been added to the kernel over time. There is, as yet, little overall order or organization here — this material was not written to be a single, coherent document! With luck things will improve quickly over time.
    [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]
  • A Study on Faults and Error Propagation in the Linux Operating System
    A Thesis for the Degree of Ph.D. in Engineering A Study on Faults and Error Propagation in the Linux Operating System March 2016 Graduate School of Science and Technology Keio University Takeshi Yoshimura Acknowledgement I would like to thank my adviser, Prof. Kenji Kono. His guidance helped me in all the time of research. I would like to express my sincere gratitude to Prof. Hiroshi Yamada. This dissertation would not have been possible without their advice and encouragement. I am also grateful to the members of my thesis committee: Prof. Shingo Takada, Prof. Hiroaki Saito, and Prof. Kenichi Kourai. This dissertation was greatly improved by their invaluable feedback. During my Ph.D., I did an internship at NEC. I enjoyed working with Dr. Masato Asahara and the opportunity had a significant impact on my research skills. He also taught me LDA, which is the core of the fault study in this dis- sertation. I am also thankful to my colleagues in the sslab. Their surprising enthusiasm and skills have always inspired me. I appreciate the financial supports from the Research Fellowships of the Japan Society for the Promotion of Science for Young Scientists and the Core Re- search for Evolutional Science and Technology of Japan Science and Technology Agency. Finally, I would like to thank my family, my parents, sister for their support all these years. Without their support and encouragement, many accomplishments in my life including this dissertation would not have been possible. 2 Abstract A Study on Faults and Error Propagation in the Linux Operating System Takeshi Yoshimura Operating systems are crucial for application reliability.
    [Show full text]
  • How to Find Bugs in USB Device Drivers
    Don’t trust your USB! How to find bugs in USB device drivers Sergej Schumilo Ralf Spenneberg OpenSource Security Ralf Spenneberg OpenSource Training Ralf Spenneberg University of Applied Sciences Muenster [email protected] [email protected] Hendrik Schwartke OpenSource Security Ralf Spenneberg [email protected] Abstract The USB fuzzing technique either tries to specifically modify the USB traffic implementing a Man-in-the-Middle Attacks via USB have been demonstrated regularly for approach[4] or to emulate a malicious USB device, which some years. A comprehensive systematic analysis of the po- injects malicious payloads into the USB host. In the past, tential risk of this weakness was very expensive, yet. The no approach supported a systematic, comprehensive analy- framework presented in this paper supports the systematic sis of all available USB device drivers of a given operating high performance fuzzing of USB drivers using massive par- system. The vast amount of possible USB device drivers allel virtual machines. The framework identifies and docu- and the possible variations of the USB traffic require the ments the security weaknesses. The format used permits the generation of several million possible fuzzing tests. The reproduction of the attack, supporting the analysis by devel- slow speed of the known hardware solutions (Facedancer, opers and analysts. etc.) makes such fuzzing attacks virtually impossible. This papers presents the development of USB fuzzing Keywords: USB, Fuzzing, QEMU, KVM, USB- framework named vUSBf (virtual USB fuzzer). This frame- Redirection, Emulation work increases the speed of the fuzzing test by several mag- nitudes. Additional features support the reproducibility and 1.
    [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]