Andrew S. Tanenbaum: the Impact of MINIX

Total Page:16

File Type:pdf, Size:1020Kb

Andrew S. Tanenbaum: the Impact of MINIX COMPUTINGCOLUMN SECTION CONVERSATIONS TITLE Andrew S. Tanenbaum: The Impact of MINIX Charles Severance, University of Michigan Andrew S. Tanenbaum describes the motivation, development, and market impact of the MINIX operating system. he story of the evolution when teaching courses about OSes. crashing at random. The functionality of Unix and Unix-like At first, Tanenbaum used a booklet was there, but it would run for 15 min- operating systems written by John Lions ( John Lions’ utes and then crash. T is very convoluted. Commentary on Unix 6th ed., with Modern Unix-like OSes generally Source Code; Peer-to-Peer Communi- Tanenbaum knew he was close, derive from AT&T/BSD Unix or some cations, 1976) to teach his classes: but he had trouble solving that “one variation of Linux. But in the begin- last bug” so he wrote software to ning, there was only AT&T Unix, I was teaching a course on operating emulate the PC hardware: and if you trace the moment where systems using version 6 Unix; John the Linux-like OSes flickered to life, Lions wrote a book describing it line by I ran my operating system on a sim- you’ll find the MINIX OS. line that was very popular at universi- ulator for the PC that was entirely MINIX’s original purpose was ties. The bean counters at AT&T didn’t deterministic and reproducible, and simply to support university courses like this: having every computer sci- then after it crashed, I ran it again and that attempted to teach OSes. Es- ence student in the world learn about looked at the last 100,000 instructions sentially, it was a set of floppy disks its product was a horrible idea. Version to find out what happened. It took me that came with Andrew Tanen- 7 came out with a license that said, a little while to complete the simulator baum’s popular book, Operating “thou shalt not teach,” so you couldn’t and get it running. If I had been smart, Systems: Design and Implementa- teach version 7 Unix anymore. It has I might have invented VMWare in the tion, first published in 1987. I visited to be up there as one of the dumbest 1980s because I had done much of the him at Vrije Universiteit (VU), and mistakes in all of business history. work but my focus was on Unix. we talked about the motivation, development, and impact of that As an accomplished computer sci- His OS worked perfectly on the simple decision to write an OS to entist who had been teaching OSes simulator—it could run forever teach a course. Visit computer.org/ for many years, Tanenbaum knew and never crash. Seemingly, it only computingconversations to watch that writing a simple Unix-like OS crashed on the hardware. He was our discussion. wouldn’t be all that difficult: about to give up when he got a lucky break: EARLY DAYS I decided to write my own operating AT&T initially provided the source system that was compatible with V7 so I was confused until one of my stu- code to its Unix OS to universi- that I could teach a course on a Unix- dents, Robbert van Renesse, mentioned ties. It didn’t have an open source like operating system. I sat down and to me that when the Intel CPU chip gets license, but it was readily avail- began writing it, and I got it almost to hot, it gives interrupt 15. I wasn’t catch- able, which made it a natural choice the point where it worked, but it kept ing interrupt 15 because the manual 0018-9162/14/$31.00 © 2014 IEEE Published by the IEEE Computer Society JULY 2014 7 r7con.indd 7 6/25/14 4:48 PM COMPUTING CONVERSATIONS didn’t mention it. I put in a piece of academic exercises, while BSD Unix Because MINIX is based on a code to catch it, and sure enough, had 20 years of development and pro- very small kernel with most of within an hour of running it, I got, “Hi, duction experience. But AT&T wasn’t the OS functionality in user space I’m interrupt 15—this is impossible, yet done making strategic errors: processes, it’s possible to recover and you’ll never see this message.” from partial failures or even upgrade Kirk McKusick and others who wrote OS components on the fly without WRITING A NEW BOOK BSD formed a company called Berkeley taking the entire system down: Once MINIX was working, Tanen- Software Design Incorporated [BSDi] baum wanted to document it by to sell BSD Unix commercially. Their If you’re running some real-time system like a radio telescope or an electric power plant, you might not In the early days, there seemed to be no reason to view want to go down for upgrades, so MINIX or Linux as commercial products. a system that can update or repair itself while maintaining fairly high availability might have a niche. writing a book similar to the one phone number was 1-800-ITS-Unix. We’ve got it working in the lab now Lions wrote, something that ex- In another brilliant commercial move, for BeagleBoard, BeagleBone, and plained MINIX in great detail so that AT&T sued BSDi to get rid of it. AT&T BeagleBone Black and are about to it could be used to teach operating had no knowledge at all about how to release them as open source. systems courses: sell Unix, so it should have gone to the BSDi guys and said, “We want to buy Most chapters have three sections. your company—how much?” And it egardless of MINIX’s possi- The first is the general principles of a would have had successes: there would ble commercial potential, component, such as a file system. The have been no MS-DOS, no Windows, R there’s no question that second is how these general principles and the world would have been all when Andrew created MINIX, he apply to MINIX—how the file system is Unix. But instead, AT&T tried to stop set the wheels in motion for an organized and its key data structures. these guys, which blocked BSDi from OS market that isn’t the exclusive The third part of every chapter nar- going commercial for several years due domain of proprietary vendors. rates the source code. to this lawsuit. According to chaos theory, some- times when a butterfly flaps its Even though this was before While AT&T’s lawsuit effectively wings in Brazil it can cause a hur- the Internet, news of the new book stalled progress on commercializ- ricane in Florida. If Robbert had not spread rapidly. At one point, a book- ing BSD Unix, other OSes including casually mentioned interrupt 15, store invited him to give a talk that Linux began to establish their po- there would have been no MINIX and was so well attended it had to use sitions in the market. With all this no Linux and thus no Android (which the Santa Clara Convention Center as confusion and with Linux address- is based on Linux). The relative stock the venue. A worldwide best-seller, ing the market for an open source prices of Apple and Samsung might Operating Systems: Design and Imple- Unix-like system, Tanenbaum kept be quite different now. mentation, is now in its third edition. MINIX’s focus on education. LINUX A NEW FUTURE Charles Severance, Computing Linus Torvalds was a student who As the field has evolved, Tanenbaum Conversations column editor and picked up MINIX and started evolv- sees that there might be some value Computer’s multimedia editor, is ing the source code: in a highly reliable OS: a clinical associate professor and teaches in the School of Information Linus went out and specifically bought The EU decided to set up a couple of at the University of Michigan. Follow a PC for the purpose of running MINIX. programs where it could give a large him on Twitter @drchuck or contact He was in the MINIX Usenet news amount of money (about €2.5 million) him at [email protected]. group and spent a lot of time develop- to specific investigators and let them do ing Linux based on MINIX. their thing. I applied for this and got an ERC Advanced grant. With this fund- In the early days, there seemed to ing, we’re trying to go push MINIX, for Selected CS articles and be no reason to view MINIX or Linux embedded systems as well as the x86, columns are available for free at as commercial products. Both were especially in the area of high reliability. http://ComputingNow.computer.org. 8 COMPUTER r7con.indd 8 6/25/14 4:48 PM.
Recommended publications
  • UNIX and Computer Science Spreading UNIX Around the World: by Ronda Hauben an Interview with John Lions
    Winter/Spring 1994 Celebrating 25 Years of UNIX Volume 6 No 1 "I believe all significant software movements start at the grassroots level. UNIX, after all, was not developed by the President of AT&T." Kouichi Kishida, UNIX Review, Feb., 1987 UNIX and Computer Science Spreading UNIX Around the World: by Ronda Hauben An Interview with John Lions [Editor's Note: This year, 1994, is the 25th anniversary of the [Editor's Note: Looking through some magazines in a local invention of UNIX in 1969 at Bell Labs. The following is university library, I came upon back issues of UNIX Review from a "Work In Progress" introduced at the USENIX from the mid 1980's. In these issues were articles by or inter- Summer 1993 Conference in Cincinnati, Ohio. This article is views with several of the pioneers who developed UNIX. As intended as a contribution to a discussion about the sig- part of my research for a paper about the history and devel- nificance of the UNIX breakthrough and the lessons to be opment of the early days of UNIX, I felt it would be helpful learned from it for making the next step forward.] to be able to ask some of these pioneers additional questions The Multics collaboration (1964-1968) had been created to based on the events and developments described in the UNIX "show that general-purpose, multiuser, timesharing systems Review Interviews. were viable." Based on the results of research gained at MIT Following is an interview conducted via E-mail with John using the MIT Compatible Time-Sharing System (CTSS), Lions, who wrote A Commentary on the UNIX Operating AT&T and GE agreed to work with MIT to build a "new System describing Version 6 UNIX to accompany the "UNIX hardware, a new operating system, a new file system, and a Operating System Source Code Level 6" for the students in new user interface." Though the project proceeded slowly his operating systems class at the University of New South and it took years to develop Multics, Doug Comer, a Profes- Wales in Australia.
    [Show full text]
  • Microkernels in a Bit More Depth • Early Operating Systems Had Very Little Structure • a Strictly Layered Approach Was Promoted by Dijkstra
    Motivation Microkernels In a Bit More Depth Early operating systems had very little structure A strictly layered approach was promoted by Dijkstra THE Operating System [Dij68] COMP9242 2007/S2 Week 4 Later OS (more or less) followed that approach (e.g., Unix). UNSW Such systems are known as monolithic kernels COMP9242 07S2 W04 1 Microkernels COMP9242 07S2 W04 2 Microkernels Issues of Monolithic Kernels Evolution of the Linux Kernel E Advantages: Kernel has access to everything: all optimisations possible all techniques/mechanisms/concepts implementable Kernel can be extended by adding more code, e.g. for: new services support for new harwdare Problems: Widening range of services and applications OS bigger, more complex, slower, more error prone. Need to support same OS on different hardware. Like to support various OS environments. Distribution impossible to provide all services from same (local) kernel. COMP9242 07S2 W04 3 Microkernels COMP9242 07S2 W04 4 Microkernels Approaches to Tackling Complexity Evolution of the Linux Kernel Part 2 A Classical software-engineering approach: modularity Software-engineering study of Linux kernel [SJW+02]: (relatively) small, mostly self-contained components well-defined interfaces between them Looked at size and interdependencies of kernel "modules" enforcement of interfaces "common coupling": interdependency via global variables containment of faults to few modules Analysed development over time (linearised version number) Doesn't work with monolithic kernels: Result 1:
    [Show full text]
  • Building Performance Measurement Tools for the MINIX 3 Operating System
    Building Performance Measurement Tools for the MINIX 3 Operating System Rogier Meurs August 2006 Contents 1 INTRODUCTION 1 1.1 Measuring Performance 1 1.2 MINIX 3 2 2 STATISTICAL PROFILING 3 2.1 Introduction 3 2.2 In Search of a Timer 3 2.2.1 i8259 Timers 3 2.2.2 CMOS Real-Time Clock 3 2.3 High-level Description 4 2.4 Work Done in User-Space 5 2.4.1 The SPROFILE System Call 5 2.5 Work Done in Kernel-Space 5 2.5.1 The SPROF Kernel Call 5 2.5.2 Profiling using the CMOS Timer Interrupt 6 2.6 Work Done at the Application Level 7 2.6.1 Control Tool: profile 7 2.6.2 Analyzing Tool: sprofalyze.pl 7 2.7 What Can and What Cannot be Profiled 8 2.8 Profiling Results 8 2.8.1 High Scoring IPC Functions 8 2.8.2 Interrupt Delay 9 2.8.3 Profiling Runs on Simulator and Other CPU Models 12 2.9 Side-effect of Using the CMOS Clock 12 3 CALL PROFILING 13 3.1 Introduction 13 3.1.1 Compiler-supported Call Profiling 13 3.1.2 Call Paths, Call and Cycle Attribution 13 3.2 High-level Description 14 3.3 Work Done in User-Space 15 3.3.1 The CPROFILE System Call 15 3.4 Work Done in Kernel-Space 16 3.4.1 The PROFBUF and CPROF Kernel Calls 16 3.5 Work Done in Libraries 17 3.5.1 Profiling Using Library Functions 17 3.5.2 The Procentry Library Function 17 3.5.3 The Procexit Library Function 20 3.5.4 The Call Path String 22 3.5.5 Testing Overhead Elimination 23 3.6 Profiling Kernel-Space/User-Space Processes 24 3.6.1 Differences in Announcing and Table Sizes 24 3.6.2 Kernel-Space Issue: Reentrancy 26 3.6.3 Kernel-Space Issue: The Call Path 26 3.7 Work Done at the Application
    [Show full text]
  • Allan Unix Newsletter
    allan Unix User Gro Newsletter ~folume 5 rnber 1 The Australian UNIX* Users Group Newsletter Volume V Number i CONTENTS Editorial 2 Survey Responses 2 New Newsletters 3 Next AUUG Meeting 3 Books 4 Book Review 6 Nets 8 AUNET Directory Ii Netnews 28 Clippings 34 Symposium on UNIX 38 Review of August 1983 AUUG Meeting 39 From the EUUG Newsletter 49 From ;login: 61 USENIX Technical Sessions at UNIFORUM 65 Letters 95 February 1984 AUUG Meeting Details 102 Copyright (c) 1984. AUUGN is the journal of the Australian UNIX User Group, Copying without fee is permitted provided that copies are not made or distributed for commercial advantage and credit to the source is given. Abstracting with credit is permitted, No other reproduction is permitted without the prior permission of the Australian UNIX User Group, * UNIX is a trademark of Bell Telephone Laboratories, AUUGN Vol V No i Editorial Do you have the feeling you have missed something in the last few years? Have your doors been blowing closed more often because you cannot find those old AUUGN issues? Well, have no fear, the editor who brought you volumes two and three has returned to bring you volume five. I would like to take this opportunity to apologise to all our regular subscribers for the problems they may have experienced in dealing with the editors of AUUGN during 1982 and 1983. Particular apologies must go to subscribers like the CSIRO, who paid for volume IV and received nothing. Well, enough of problems, on to the good stuff! In This Issue You will notice the appearance of a few new departments in this volume.
    [Show full text]
  • User-Level Window Managers for UNIX
    User-LevelWindowManagers for UNIX Robert J.K. Jacob NavalResearch Laboratory Washington, D.C. 20375 ABSTRACT Wm manages a collection of windows on a display terminal. Each windowhas its ownshell or other interactive program, running in parallel with those in the other win- dows. This permits a user to conduct several interactions with the system in parallel, each in its own window. The user can move from one windowtoanother,re-position a window, orcreate or delete a windowatany time without losing his or her place in anyof the windows. Windows can overlap or completely obscure one another; obscured win- dows can be "lifted" up and placed on top of the other windows. This paper describes howsuch a windowmanager for UNIX† is implemented as a set of user processes, without modifications to the UNIX kernel. It shows howthe sim- ple, but well-chosen facilities provided by the original (Version 6) UNIX kernel are suffi- cient to support wm.Inaddition, subsequent versions of wm exploit features of the kernel introduced into newer versions of UNIX to provide faster and more sophisticated window operations, still implemented entirely at the user level. Introduction This paper describes the design of a display windowmanager for UNIX implemented entirely as a set of user processes, without modifications to the UNIX kernel. It shows howthe simple facilities provided by the original (Version 6) UNIX kernel are sufficient to support such a windowmanager.Inaddition, more recent versions of the windowmanager exploit features of the kernel introduced into newer versions of UNIX to provide faster and more sophisticated operations in windows, still implemented entirely outside the kernel.
    [Show full text]
  • Mandoc: Becoming the Main BSD Manual Toolbox
    mandoc: becoming the main BSD manual toolbox BSDCan 2015, June 13, Ottawa Ingo Schwarze <[email protected]> Cynthia Livingston’sOTTB “Bedifferent” (c) 2013 C. Livingston (with permission) > Ingo Schwarze: mandoc page 2: INTROI BSDCan 2015, June 13, Ottawa Brief history of UNIX documentation • The key point: All documentation in one place and one format. Easy to find, uniform and easy to read and write. Be correct, complete, concise. • 1964: RUNOFF/roffmarkup syntax by Jerome H. Saltzer,MIT. Unobtrusive,diff(1)-friendly,easy to hand-edit, simple tools, high quality output. • 1971: Basic manual structure by Ken Thompson and Dennis Ritchie for the AT&T Version 1 UNIX manuals, Bell Labs. • 1979: man(7) physical markup language for AT&T Version 7 UNIX. • 1989: mdoc(7) semantic markup by Cynthia Livingston for 4.3BSD-Reno. Powerful, self-contained, portable. • 1989: GNU troffbyJames Clarke. • 2001: mdoc(7) rewrite by Werner Lemberg and Ruslan Ermilovfor groff-1.17. • 2008: mandoc(1) started by Kristaps Dzonsons. • 2010: mandoc(1) is the only documentation formatter in the OpenBSD base system. • 2014: mandoc(1) used by default in OpenBSD, FreeBSD, NetBSD, illumos. 16:19:30 What is the mandoc toolbox? → < > Ingo Schwarze: mandoc page 3: INTROIIBSDCan 2015, June 13, Ottawa What is the mandoc toolbox? User perspective:man(1), the manual viewer One comprehensive tool! Normal operation always proceeds in three steps: 1. Find one or more manuals in the file system or using a database by manual name — man(1) — or by search query — apropos(1) =man -k The result of this step can be printed out with man -w.
    [Show full text]
  • Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO
    Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO..........................................................................................................................................1 Martin Hinner < [email protected]>, http://martin.hinner.info............................................................1 1. Introduction..........................................................................................................................................1 2. Volumes...............................................................................................................................................1 3. DOS FAT 12/16/32, VFAT.................................................................................................................2 4. High Performance FileSystem (HPFS)................................................................................................2 5. New Technology FileSystem (NTFS).................................................................................................2 6. Extended filesystems (Ext, Ext2, Ext3)...............................................................................................2 7. Macintosh Hierarchical Filesystem − HFS..........................................................................................3 8. ISO 9660 − CD−ROM filesystem.......................................................................................................3 9. Other filesystems.................................................................................................................................3
    [Show full text]
  • Introduction to Bioinformatics Introduction to Bioinformatics
    Introduction to Bioinformatics Introduction to Bioinformatics Prof. Dr. Nizamettin AYDIN [email protected] Introduction to Perl http://www3.yildiz.edu.tr/~naydin 1 2 Learning objectives Setting The Technological Scene • After this lecture you should be able to • One of the objectives of this course is.. – to enable students to acquire an understanding of, and understand : ability in, a programming language (Perl, Python) as the – sequence, iteration and selection; main enabler in the development of computer programs in the area of Bioinformatics. – basic building blocks of programming; – three C’s: constants, comments and conditions; • Modern computers are organised around two main – use of variable containers; components: – use of some Perl operators and its pattern-matching technology; – Hardware – Perl input/output – Software – … 3 4 Introduction to the Computing Introduction to the Computing • Computer: electronic genius? • In theory, computer can compute anything – NO! Electronic idiot! • that’s possible to compute – Does exactly what we tell it to, nothing more. – given enough memory and time • All computers, given enough time and memory, • In practice, solving problems involves are capable of computing exactly the same things. computing under constraints. Supercomputer – time Workstation • weather forecast, next frame of animation, ... PDA – cost • cell phone, automotive engine controller, ... = = – power • cell phone, handheld video game, ... 5 6 Copyright 2000 N. AYDIN. All rights reserved. 1 Layers of Technology Layers of Technology • Operating system... – Interacts directly with the hardware – Responsible for ensuring efficient use of hardware resources • Tools... – Softwares that take adavantage of what the operating system has to offer. – Programming languages, databases, editors, interface builders... • Applications... – Most useful category of software – Web browsers, email clients, web servers, word processors, etc..
    [Show full text]
  • Recompiling Minix
    8 RECOMPILING MINIX This chapter is intended for those readers who wish to modify MINIX or its utili- ties. In the following pages we will tell what the various files do and howthe pieces are put together to form the whole. It should be emphasized that if you simply intend to use MINIX as distributed, then you do not have torecompile the system and you do not have toread this chapter.Howev er, ifyou want to makechanges to the core of the operating system itself, for example, to add a device driverfor a streamer tape, then you should read this chapter. 8.1. REBUILDING MINIX ON THE IBM PC Although this section is specifically for IBM PC users, it should also be read carefully by everyone interested in recompiling MINIX.Most of what is said here applies to all versions of MINIX.The sections about other processors mostly discuss the differences between recompiling MINIX on an IBM PC and on another system. The MINIX sources are contained in the following directories, normally all subdi- rectories of /usr/src except for include which goes in /usr/include: center allbox; l l. Directory Contents include The headers used by the SEC. 8.1 REBUILDING MINIX ON THE IBM PC 113 commands (has twosubdirectories) kernel Process, message, and I/O device handling mm The memory manager fs The file system tools Miscellaneous tools and utilities test Test programs lib Libraries (has several subdirectories) commands The utility programs (has manysubdirectories) Some of the directories contain subdirectories. If you are working on a hard disk, be sure that all these directories have been set up, and all files copied there from the dis- tribution diskettes and decompressed and dearchived.
    [Show full text]
  • CBCE"1Jum11m(] CD~Cbul1 Ij0d~
    TOP SECRET OJalUOCDOJallb ~l!CBC!JWOU~ UJl]l!OJCB~ ll~WU l]l!~~l]l! l]f,J Wl5£ill!ll5 ~ W(lJ~~l1WllJC!l CBCE"1Jum11m(] CD~CBUl1 iJ0D~ 86-36 PARTIAL MACHINE TRANSLATION: FINAL REPORT (U) .. J . ~ .•• 1 TRACKS IN THE SANDS OF TIME (U)•••••••••••••••••Fred Mason •••••••• 0 ••••••••• 12 NSA-CROSTIC NO. 39 (U) •••••••••••••••••••••••••• David H. Willimas.~.•• •••••· •• 14 REVIEW: THE AMERICAN MAGIC (U) ...... _.......... ·I V··· . .; ......... 16 SHELL GAME (U) •••••••••••••••••••••••••••••••••• w. E. s ••••.•• ,/ .• .,,,~ ••... i ••. 20 WORD PROCESSING IN A4 (U)................... •.• • t ••• • ••..•• •i ••• • 22 BOOKBREAKERS' FORUM ON MACHINE AIDS (U)........ I••••••• •• •••• 27 PERSONAL COMPUTER APPLICATION (U) • • • • • • • • • • • • • • t ••••• 28 THIS 9QCUAIENT CQNT.~INS CQ9EWQR9 l\ft.:F8RIAb Sln\SSIFIEB BY NS1t/eSSM 123•2 TOP SECRET ItEVImf 6'M 16 Apt 2612 DP=classifiect and Approyeci for RP-lease o ... ..- t;JSA on 1 0-1 ?-201? pursuant to EC) 135 -:;- o M O R C::asR # $4 7 'j %"") DOCID: 4033690 Published by Pl. Techniques and Standards. for the Personnel of Operations Editorial VOL. IX. No. 4 APRIL 1982 By now it seems safe to announce that :.., J ~ · CRYPTOLOG is once again coming out on a '•;:. PUBLISHER monthly schedule. That was our objective bac~ in October, but there were a lot of questions BOARD OF EDITORS about whether it could be done. Editor-in-Chief • ._I______ _. (7119/8322s) Production ••••••••••• ~... ________I (3369s) We decided at the outset not to make any promises about publication schedules. These days there are so many people promising so Collection ...................l ___ .....,_~I (8555s) much, and yesterday's promises have a way of fading unfulfilled beneath the flood of ever Cryptanalysis ••••••••••• ~..
    [Show full text]
  • Linux Assembly HOWTO Linux Assembly HOWTO
    Linux Assembly HOWTO Linux Assembly HOWTO Table of Contents Linux Assembly HOWTO..................................................................................................................................1 Konstantin Boldyshev and François−René Rideau................................................................................1 1.INTRODUCTION................................................................................................................................1 2.DO YOU NEED ASSEMBLY?...........................................................................................................1 3.ASSEMBLERS.....................................................................................................................................1 4.METAPROGRAMMING/MACROPROCESSING............................................................................2 5.CALLING CONVENTIONS................................................................................................................2 6.QUICK START....................................................................................................................................2 7.RESOURCES.......................................................................................................................................2 1. INTRODUCTION...............................................................................................................................2 1.1 Legal Blurb........................................................................................................................................2
    [Show full text]
  • Network Driver for Micro Os Xv6
    NETWORK DRIVER FOR MICRO OS XV6 A Project Presented to the faculty of the Department of Computer Science California State University, Sacramento Submitted in partial satisfaction of the requirements for the degree of MASTER OF SCIENCE in Computer Science by Anmoldeep Singh Sandhu SPRING 2020 © 2020 Anmoldeep Singh Sandhu ALL RIGHTS RESERVED ii NETWORK DRIVER FOR MICRO OS XV6 A Project by Anmoldeep Singh Sandhu Approved by: __________________________________, Committee Chair Dr. Jinsong Ouyang __________________________________, Second Reader Dr. Jingwei Yang ____________________________ Date iii Student: Anmoldeep Singh Sandhu I certify that this student has met the requirements for format contained in the University format manual, and this thesis is suitable for electronic submission to the library. Credit is awarded for the Project. __________________________, Graduate Coordinator ___________________ Dr. Jinsong Ouyang Date Department of Computer Science iv Abstract of NETWORK DRIVER FOR MICRO OS XV6 by Anmoldeep Singh Sandhu The network driver is one of the primary requirements for any operating system. Xv6 is a micro-operating system based on version 6 Unix. The latest version of xv6 does not have support for the ethernet driver or the four-layer UDP/IP model. Our work extends the xv6 operating system to support a functioning network driver with the capability of handling a packet burst. This Project also adds support for UDP/IP and Ethernet protocol to the xv6 operating system. _______________________ Committee Chair Dr. Jinsong Ouyang _____________________ Date v ACKNOWLEDGMENTS I am thankful to Dr. Ouyang for providing me the opportunity to learn new skills in the field of driver development. Dr. Ouyang showed trust in me in carrying out this Project.
    [Show full text]