Term Paper on the Operating System | Software | Computer Science

term paper on operating system

Here is a compilation of term papers on the ‘Operating System’ for class 11 and 12. Find paragraphs, long and short term papers on the ‘Operating System’ especially written for college and IT students.

Term Paper on the Operating System

Term Paper Contents:

  • Term Paper on the Fundamental Tasks of Operating System

Term Paper # 1. Definition of the Operating System :

ADVERTISEMENTS:

In early computers up to the second generation, the individual jobs for processing by the computer system used to be manually loaded, executed by the processor, again manually unloaded with some house-keeping operations, and then the next job used to be loaded manually again.

In fact, in those pre-operating-system days, the concept of directly executable programs, like we have today, just did not exist and each program, called a job had to be done in steps — with source-code in memory, loading of tape containing compiler [assembler], running the compiler to get object code, unloading compiler tape, loading the linker-editor tape, running object program, unloading everything and clearing primary storage.

During this period called set up time, used for loading and unloading, the central processing unit used to be totally idle. Again, if an error condition developed during processing, it had to be manually handled for detection and correction of errors; the central processing unit remaining idle during this time also.

In case of errors, memory dumps had to be taken and given to the programmer for correction and then the whole process had to be started again. Moreover, there is always a great imbalance between the speed of processing by the central processing unit and the speed of the Input/output operation, making the central processing unit idle during Input/output operations to a large extent. Incidentally, in pre-operating system days, the boot-strap program was used to load each job.

The first step taken to cut down the set up time was to have skilled operators and several jobs being run on batches. During those days, the programs were mainly written either in COBOL or FORTRAN, and, batching meant running all COBOL programs in a batch and then all FORTRAN programs in another batch. But the operators were not programmers, so even for simple errors, the memory dump had to be taken and given to the respective programmers for correction; considerably delaying jobs.

The next step in development, which started from late 1950s, is to have a small monitor program for automatic job sequencing — the job Control Language [JCL] having been born, which were used to prepare the job-control cards. These programs were the fore-runners of the present day Operating Systems.

As far as the input operations were considered, these were extremely slow processes, holding down operation of the central processing unit. So, the first step was to get the input cards read in smaller satellite computers in off-line mode and then using the tapes in the main computer. The next step was to develop a system known as buffering.

There the concept was to make the input devices capable of operating independently within the overall control of a monitor program and taking away the choice of the actual device to be used from the hands of the programmers to the monitor — the programmers were required to specify logical devices with the monitor deciding which device to actually use, there being multi-device physical systems.

The ability to run a program with different input/ output devices is called device independence. The concept of DMA — Direct Memory Access also developed a hardware doing what used to be done by the software.

Taking all these aspects within its fold for efficient control of the hardware, the class of software called Operating System developed, which always remains active in the main memory, being called a resident program. Since then this Operating System has undergone a number of modifications to make it highly efficient, effective and convenient to user.

Actually, the different tasks performed by an Operating System is quite complex and developing an Operating System calls for highest level of programming expertise. The Operating System always stands as a layer between the application software and the hardware — insulating the former from the latter.

It provides all the required hardware control services to the application programs through simple sub-routines which can be called by these programs; the detail control being done by the Operating System.

The Operating System between the User and the Hardware

In the progressive development of the Operating System, a major step was to make the program processing ability interactive as against the batch-mode used earlier. In batch processing the user could not interact with the central processing unit creating lot of difficulties and they had to set up control cards and wait for processing to be completed with high turnaround time.

In interactive mode, the keyboards of the terminals replaced control cards. Another spectacular development was allowing a number of programs of one or more users to be processed simultaneously, called multi-programming. Currently, most mini- and micro-computers use Operating Systems of interactive mode.

Of course, such improvements further complicated the design of the Operating Systems, which had to incorporate memory management, file control systems, processor and device scheduling, deadlock handling, concurrency control, protection, etc.

The programming language used for interacting with the Operating System is called the command language — the commands given are handled by a special software called command processor or command interpreter.

Under the MS DOS, the third system file, called COMMAND(dot)COM, which is not hidden like the other two, is the command interpreter which executes all the internal commands given at the MS DOS prompt — be it for clearing the screen or loading and executing an application program. This is the only executable file of MS DOS which is never used directly by the user by typing the name command at MS DOS prompt, as is done with other MS DOS executable files, like FORMAT(dot)COM.

The program COMMAND(dot)COM provides the command language under MS DOS — the actual syntax of the MS DOS commands, both internal and external, come under the category of command languages, as the shell commands of the UNIX Operating System are.

Term Paper # 2. Functions of the Operating System :

Some of the functions are given below:

i. I/O Management:

Selecting the appropriate channel of data transfer as required, activating and handing over control, giving them autonomy for overlapped operation. The transfer of the data between primary and secondary storage is left to the control of the DMA Controller.

ii. Memory Management:

Allocating/deallocating memory to programs, creating virtual memory in disk drives, swapping programs and data from one place to another in the memory. Preventing one program to interfere with another program.

iii. File Management:

Anything and everything that is kept in permanent storage is done by means of a file which can be of any length, as far as the user is concerned. But, as far as the disk drives are concerned, the spaces are allocated to a file in clusters, as and when additional space is required, and the clusters are not necessarily in sequence one after another.

The Operating System, not only creates and allocates spaces for files, but it keeps quick accessible records of the file structure details in the directory area and in the File Allocation Table [FAT].

iv. Job Control:

In case of batch-processing jobs, the Operating System controls the loading, execution and unloading of the jobs, along with initiating activities of input/output operation.

v. Buffering:

A buffer is a specific storage area, created in primary storage or in the data-channel or both, where the data is stored in transit between input/output devices and main memory. The buffer in the data channel is called buffer register. Buffering is temporary storing of data in buffer during data transfer to compensate for imbalance in the operating speed of the central processing unit and the input/output devices.

During transfer from storage device, the IOCS fills up the buffer, where from the central processing unit processes it at its normal processing speed. In case of tape-drives, sometimes double buffering is used — one buffer for transfer of data from the tape-drive and the second buffer is for reading by the central processing unit, data being moved from the first to the second buffer at appropriate moment. Buffering is directly related to interrupt processing. When a buffer becomes full an interrupt is generated to bring it to the attention of the kernel, to whom the control is handed over.

vi. Spooling:

It is an acronym for Simultaneous Peripheral Operation On Line. This is another technique which takes into account of the low- speed of printers as compared to the speed of the central processing unit. Under this method all printing jobs are serially stored in a dedicated storing place, generally in a direct access storage device, and whenever the central processing unit gets a free time, it continues with printing operation. If the service of the central processing unit is required for a processing job, it stops printing operation and goes back to program processing again.

When a buffer with Input/output control system is used, overlapping takes place, that is simultaneous input/output operation and program processing are carried out. As far as buffering is concerned it overlaps the input/output operation of a job with its own program processing operation, whereas, in case of spooling, it overlaps the input/output operation of one job with the program processing of another job.

A number of algorithms have been developed to ensure proper scheduling of jobs for using the central processing unit.

Some of these are:

FCFS — First Come First Served,

SJF — Shortest Job First,

RR — Round Robin scheduling etc.

Scheduling of the central processing unit means the process of selecting and allocating it to different processes waiting for its service. The different criteria used for scheduling of the central processing unit are: CPU utilization, throughput-time, jobs completed/unit of time, turnaround time, waiting time, response time, etc.

Term Paper # 3. Multi-Programming Operating System :

In general, Multi-tasking, Concurrent Programming, or Multi-programming refer to a state where two or more different and independent programs are executed in interleaved manner by the same processor. Under this system, the Operating System quickly switches over control from one program to another, so that each is executed one by one — the users never being aware of this, feel that the computer exclusives belong to each of them.

The processor is kept busy by trying to balance the input, output, and processing operations, in which autonomous nature of the input/output control and the technique of buffering is used. In multi-tasking, an input, an output, and a processing job can occur simultaneously, called overlapped operation.

The technique adopted in multi-programming Operating System, to minimize the idleness of the central processing unit and to allow a number of programs to run simultaneously, is to attach different priorities to different jobs. A job requiring large input/output operation is called I/O Bound and generally given high priority.

A job requiring large processing operation is called CPU Bound and a low priority is attached to it. The program control shifts from one program to another depending on the relative priorities. In addition, different algorithms are available for such job scheduling. Once an input/output control completes its operation, it draws attention of the master program of the Operating System through interrupts, which passes control from one section to other, allocating central processing time.

In multi-programming, when a job has to wait for something like a tape to be mounted, a command to be typed, or an input/output operation to be completed, the Operating System switches to another job and starts executing it.

In time-sharing Operating Systems, the allocation of central processing operation is based on a fixed time supplied by the real-time clock [RTC]. The pulses generated by the RTC at fixed intervals, generate interrupts drawing attention of the master program, which causes another program to be executed from where it paused last time.

The technique is called time-sharing. Whether the Operating System uses only time sharing or job scheduling on the basis of priorities or both, depend on the design of the particular Operating System.

In a networked system, independent computer systems are inter-connected, where the data files and programs are in the central unit [file server] but used by other computers for processing at their own end, whereas, time-sharing applies to a central processing unit which meets the processing requirements of a number of users connected through terminals, none having their individual processing capability.

Term Paper # 4. Different Operating Systems :

In case of large machines, the mini-computers and mainframes, the Operating System is specific to the same family of machines. For example CP/67 — the Control Program 67 is for IBM 360/67 mainframes only. But in case of micro­computers, the Operating Systems are of general nature being compatible with large variety of machines of different makes.

When the microcomputers were 8-bit systems, the most popular Operating System was CP/M — Control Program /Microcomputer. But when microprocessors graduated to 16-bit systems, giving birth to Personal Computers, PC DOS with IBM’s copyright and MS DOS with Microsoft’s copyright, both being same, were born. These are a successor to an Operating System called QDOS [Quick and Dirty Operating System] designed by Tim Paterson, who named it like that. It is basically a single-user system, with limited multi-tasking facility for PRINT operation.

If the Operating System can do different things apparently simultaneously, it is called multi-tasking operating system. For example, if you are copying certain files in one operation and also seeing the files in another location, it is a case of multi-tasking. In MS DOS, only the printing operation with the PRINT command can work like this.

There are a number of other Operating Systems which are compatible to MS DOS, the most prominent one being DR DOS. Others are Multi-DOS of Consortium Technologies, which is multi-tasking and multi-user. The Concurrent DOS of the Digital Research is, however, multi-tasking only.

Another joint venture of IBM and Microsoft in the area of Operating System resulted in creation of 80286 based Operating System called OS/2, which is multi-tasking and it is fully compatible with MS DOS. It provides for 48 MB of RAM, needing 1.5 MB for itself.

CP/M-86 is a development of CP/M for 16-bit machines, but it has been outsmarted by MS DOS.

Among the multi-user operating system, the most popular one is UNIX, which has been developed from an Operating System called Multics [Multiplex Information and Computing Service], at Bell Laboratories, almost by the same team which developed the C language. Since Bell Laboratories made available the source code of the original UNIX, different versions of UNIX have come up, most of which are not compatible to each other. Microsoft came out with an 8088 ver­sion of UNIX and it is called Xenix. In VAX machines, it is called Ultrix.

For 32 bit computers, Microsoft has come out with a 32-bit Operating System called Windows N T. For networked systems, the most popular Operating System is called Novel Netware, which operates above MS DOS or OS/2 platform, having additional facilities over MS DOS. Window 95 is also an operating system by merging MS DOS and Windows facilities.

Some of the operating systems of large computers are- 1100 Executive for UNIVAC 1100 Series; MCP for Burroughs B5000, 6000, and 7000 Series; Multics for Honywell Series 60 Level 68; Scope for CDC Cyber 70, Cyber 170 and 6000 Series; Tops 10 for DEC System 10; etc.

Term Paper # 5. Characteristics of the Operating System :

Before going into the characteristics of different types of the operating systems, let us try to understand the basics of a computer system vis-a-vis its processing functions. Analyzing from a simplified view, any program or a job carried out using a computer, like say payroll accounting, can be broken down into three basic components of Input, Processing, and Output [I-P-O], that is, into three different tasks.

If a single job is carried out serially from the beginning to the end, it would not be an efficient way of using the computer’s ability, especially that of the CPU. So buffering and spooling were introduced to take care of the simple tasks of I/O operations through IOCS by overlapping and we got what is called multi-tasking operating system — the serial I-P-O procedure being converted to serial-parallel processing.

Now, this certainly improved efficiency and cut down the total job processing time, but, it also resulted in the CPU being idle to a considerable extent during I/O operations, having nothing else to do. So, if more than one job is made available to the CPU at a time by loading them into the memory, the idleness of the CPU can be reduced by switching its processing service from one job to another, over and above the same type of multi-tasking operation for each individual jobs, and then, we get what is called multi-programming operating system — each job being a separate program.

Thus, multi-programming implies multi-tasking but the reverse is not true. The basic objective of multi­programming is to maximize utlisation of the resources of the CPU, especially in batch processing of different programs. The multi-programming operating systems have to schedule loading as well as execution of a number of programs.

Again, because of inherent inflexibility with batch processing, the system of simultaneous interactive processing for a number of users, each with his own program became a necessity. In order to cater to such multi-access mode with good response time, the technique of time-sharing came into use, which primarily relied on the system clock.

Later on both the techniques of multi-programming and time-sharing were integrated, developing modern operating systems, some of which are multi-user operating systems. Time-sharing is basically a technique of organizing the processing operation of a computer system in such a way that a number of end-users can interact with the system simultaneously. Incidentally, multi-programming can also be done with a single job.

In a multi-access operating system the objective is to ensure quick response time to each user, where as, in a batch processing system, the objective is to maximize the total processing done by the system.

Term Paper # 6. Fundamental Tasks of the Operating System:

i. Job Control Language (JCL ):

One of the fundamental task of the Operating System in the batch processing mode is to eliminate the idleness of the central processing unit during set up operation of jobs being loaded one after another, called stacked-job operation. A special type of command language, called Job Control Language [JCL] is used for this purpose, which identifies each job to be processed one after the another, and conveys the specific requirement of each job to the Operating System including the user’s name/code, account number, authority, the input/output devices to be used, the language compiler/linker to be used, etc.

This type of job processing is called batch-processing, with jobs using similar compiler being processed together. The complete operation is controlled by the Job Control Program of the Operating System — the instructions being given in Job Control Language.

Once a job is processed completely, the system control returns to the master program of the Operating System, which then calls the Job Control Program. The JCL gets loaded, takes over control and carries out the instructions for the next job and transfers control to it, which on completion returns control to the master program of the Operating System. This process continues until all the jobs of the batch are fully processed.

ii. Input/Output Routines :

Each input/output devices having special characteristics need to be controlled in different manner. To cater to this wide variety of input/output devices there are specific small control programs called device drivers. A device driver is actually a set of procedures that control peripheral hardware devices.

These device drivers, containing specific input/output routines are called by the master program of the Operating System when dealing with a specific device for input or output operations, as the case may be.

iii. Input/Output Control System :

A large part of computer processing, especially data processing, involves movement of data from one device to another, from a device to the primary storage, or from the primary storage to a device. As already stated, the operating speed of these input/output devices are considerably lower than the processing speed of the central processing unit; which normally keep the latter idle during input/output operations.

In order to ensure that the central processing unit does not remain idle during input/output operations, special Input/output Control Systems [IOCS] have been developed which are used by the master program of the Operating System. The input/output operations are fairly simple but involves longer times, because of inherent deficiency in the speed of the I/O devices.

These can now be carried out without direct and continuous supervision of the central processing unit throughout the process of such data movement, avoiding unnecessary idle state of the central processing unit. The IOCS exactly does this kind of operation. Let us see how it is done.

A channel is a physical path, with its own control and monitoring circuits in a processor, along which the data flows between the slow speed input/output devices and the high speed central processing unit. The characteristics of these channels are that once these are instructed by the central processing unit to get or send data to a particular device, they operate independently transferring all data and when completed, reports back to the central processing unit the status.

A computer system, especially the large one, has a number of channels for input as well as output. Whenever a data movement is required, the master program of the Operating System activates the required channel processor and hands over control to it — the central processing unit becoming free to do other processing activities. The channel processor uses buffers which causes overlapping of input/ output and processing operation — both being done simultaneously. The interrupts, play a vital role in informing the central processing unit when a particular data operation is completed.

Basically, the functions of the Input Output Control System is to interpret I/O requests and execute it after locating the source and destination of data — reporting back to the central processing unit by generating appropriate interrupt.

The I/O Control Device, used in microcomputers for transfer of data from disk drives to primary storage and vice versa is carried out by DMA Controller, which stands for Direct Memory Access controller, given by chip number 8237, which has four channels. In PC ATs, two of these chips are used.

iv. Linker :

In each operating system, there is invariably a special program called Linker (also called link-editor), which converts the object-program created by a compiler or assembler to the executable mode, so that the program can be processed at the command level of the Operating System.

The link program also links different object modules of the application program, along with the programs used from the Library files to create a single relocatable program for loading and execution under the platform of the Operating System. Since it is not known beforehand, at which absolute address of the main memory the application program will be loaded during execution, the address of data blocks are usually left as a relative address 15 in the application program with reference to the beginning of the address of the instruction code block.

When the program is loaded, the relative addresses are appropriately converted to respective physical addresses by the Operating System so that the program can execute successfully.

Generally in PC system, the compilers and assemblers provide their own link program, which is claimed to be more efficient for that application than the MS DOS Link program, which can also be used.

The linker, called LINK in MS DOS, creates a special file header in the executable file, which is used by the master program of the Operating System to provide the physical addresses inside the program file, so that these can be executed. The birth of link is related to the development of Operating Systems; it did not exist in pre-Operating System days.

v. Memory Management :

An application program, or for that matter any program cannot be executed, until and unless, the Operating System allocates a need-based storage place in the main memory, creates appropriate headers, stack location, etc., and then hands over the control to the program to be executed. After the application program is executed, it returns back control to the Operating System, which does a bit of house-keeping and deallocate the memory for use by other programs.

The main memory is the exclusive jurisdiction of the Operating System, which it temporarily leases out to different application programs for use, as long as it is required to use. The technique of memory management is highly complex in case of Multi­programming Operating System, because all the programs have to be accom­modated in memory and each in turn has to be handed over to the central processing unit for execution.

Sometimes, virtual memory, which is an extension of the main memory to storage disks, is created and used for swapping different programs in turn for execution. It is to be noted that both the central processing unit and the input/output units interact with the main memory. In TSR [Terminate but Stay Resident] programs, the memory allocated to a part of the program is not deallocated, so that it can be revived by the user at any time with the flick of a switch; the memory management routines ensure this.

vi. The Kernel :

At the core of each Operating System is a master program, which is variously called as Executive, Supervisor, Monitor, or Kernel. This part of the Operating System always remains in memory in active state, controlling the computer in various ways, as and when required. The kernel, calls other programs of the Operating System whenever required by loading these into main memory form the direct access storage devices.

In MS DOS, there are three files called system files which contain the system software. These three files are IO.SYS, MSDOS.SYS, and COMMAND.COM. Except for a portion of the command processor, called transient portion, the rest are always resident in memory, continuously moni­toring and controlling the operation of the computer along with the peripherals to allow the computer system to be used for problem solving.

The MS DOS allows the transient portion to be over written by application programs if there is a shortage of space in memory and reloads it when the execution of the application program ends. When you will be working with MS DOS in floppy drives only, you will find that at the end of many programs, there will be a prompt to insert a disk in drive A with command.com — this is required to reload the transient portion of the Operating System, which is MS DOS here.

In multi-user Operating System like UNIX, the kernel creates a shell, a special environment above the kernel layer, which acts as a command interpreter; the most common shells being Bourne and C shells. The MS DOS, since Version 4 has also incorporated shell environment for carrying out various command level functions with graphical screens.

The currently quite popular Window software is not an Operating’ System, but it is a graphic environment like shell, operating above the kernel of MS DOS — where mouse can be used extensively.

Related Articles:

  • Term Paper on Database System | Software Programs | Computer Science
  • Term Paper on Program Flow Chart | Programming | Computer Science
  • Term Paper on Word Processing | Application Packages | Computer Science
  • Term Paper on the Number System: Top 5 Papers | Computer Science

Study at Cambridge

About the university, research at cambridge.

  • Events and open days
  • Fees and finance
  • Student blogs and videos
  • Why Cambridge
  • Course directory
  • How to apply
  • Fees and funding
  • Frequently asked questions
  • International students
  • Continuing education
  • Executive and professional education
  • Courses in education
  • How the University and Colleges work
  • Visiting the University
  • Term dates and calendars
  • Video and audio
  • Find an expert
  • Publications
  • Global Cambridge
  • Public engagement
  • Give to Cambridge
  • For current students
  • For business
  • Colleges & departments
  • Libraries & facilities
  • Museums & collections
  • Email & phone search
  • Computer Laboratory
  • Past exam papers

Operating Systems

Department of Computer Science and Technology

  • Academic staff
  • Support staff
  • Contract researchers
  • Fellows & affiliates
  • PhD students
  • Wednesday Seminar Series
  • Wheeler Lectures
  • women@cl 10th Anniversary
  • Computer Laboratory 75th Anniversary
  • Shopping and leisure
  • Library induction
  • Electronic resources
  • Virtual journals shelf
  • Local services
  • Lab technical reports
  • External technical reports
  • Resource lists
  • Reading lists
  • Maps and directions
  • Contact information
  • Group Meetings
  • Project ideas for current students
  • Projects and research topics
  • [no title found]
  • Selected Publications
  • Open source components
  • Contact Details
  • Digital Technology
  • Applying to do a PhD
  • Project suggestions
  • Other information
  • Reading Club
  • Postgraduate opportunities
  • Programming, Logic, Semantics
  • Projects and topics
  • Security Seminar Series
  • Mailing lists
  • Research Projects
  • Student Projects
  • Research Admin
  • PhD applications
  • Graduate Admissions Prospectus
  • Funding deadlines
  • MPhil in Advanced Computer Science
  • Premium Research Studentship
  • Student Administration
  • Induction for M.Phil and Part III students
  • Part III and ACS projects
  • Part IA CST
  • Part IB CST
  • Part II CST
  • Lecturer index
  • Instructions for lecturers
  • Examination dates
  • Examination results
  • Examiners' reports
  • Plagiarism and collusion
  • Purchase of calculators
  • Data Retention Policy
  • Guidance on deadlines
  • Part III Assessment
  • MPhil Assessment
  • Student Complaint Procedure
  • Short form timetable
  • Part II supervisions overview
  • Part II sign-up dates
  • Notes on supervising
  • Supervisor support
  • Advice for students visiting Cambridge
  • UROP internships
  • Previous years
  • Briefing document (Pink Book)
  • Important dates
  • Phase 1 report
  • Back-up advice
  • Resources Declaration
  • Studies Involving Human Participants
  • Failure to submit proposal
  • Selection Tips
  • Declaration of originality
  • Submission of dissertation
  • IP ownership
  • Diploma model projects
  • Older project suggestions
  • Supervising Notes
  • Overseer Briefing Notes
  • Directors of Studies
  • Managed Cluster Service
  • Part III and MPhil machines
  • Online services
  • Installing Linux
  • Microsoft Azure for Education Membership
  • Neil Wiseman, 1934–1995
  • Roger Needham, 1935–2003
  • David Wheeler, 1927–2004
  • Karen Spärck Jones, 1935–2007
  • Judith Ann Bailey, 1934–2008
  • Robin Milner, 1934–2010
  • Sir Maurice Wilkes, 1913–2010
  • Michael JC Gordon, 1948–2017
  • Richard Gibbens, 1962–2018
  • An introduction to our computing facilities
  • Information for new PhD students
  • Information for new staff
  • Information for visitors
  • Information for hosts of visitors
  • General information
  • Induction Guidelines
  • Specialist resources
  • Printing and scanning
  • The CL network
  • SSH access to the CL systems
  • Supported platforms
  • Generic Unix/Linux information
  • Web servers and sites
  • The RT ticketing system
  • Lecture theatre AV
  • Departmental policies
  • Meeting rooms
  • Personnel information
  • Staff training
  • Wiseman prize
  • General health and safety
  • Environment
  • H&S policies & committees
  • Risk assessment
  • Laser safety
  • Useful links
  • Index of Health & Safety pages
  • PhD supervisors
  • Graduate Advisers
  • First Year Report: PhD Proposal
  • Second Year Report: Dissertation Schedule
  • Third Year Report: Progress Statement
  • Fourth Year Report: the last year
  • Papers and conferences
  • Thesis formatting
  • Submitting your dissertation
  • Exemption from University Composition Fees
  • Leave to work away, holidays and intermission
  • Researcher Development
  • Application deadlines
  • List of PhD thesis
  • Graduate Students' Forum
  • PAT, recycling and Building Services
  • Preparing Tripos exam questions in LaTeX
  • Information for CST examiners
  • Information for Directors of Studies
  • ACS module definition
  • Providing advice to incoming ACS students
  • ACS interviewing and admissions
  • Outreach material
  • Faculty Board
  • Degree Committee
  • Graduate Education
  • Tripos Management
  • Health & Safety
  • IT Strategy
  • Equality and Diversity
  • Research Staff
  • Staff–Student
  • Graduate Students
  • Buildings and Environment
  • Discontinued committees
  • Building Services
  • Access and security
  • Care of the WGB
  • Facilities in offices
  • Energy & Environment
  • West Cambridge Site
  • Leaving the department

Past exam papers: Operating Systems

Solution notes are available for many past questions to local users. They were produced by question setters, primarily for the benefit of the examiners. These are not model answers : there may be many other good ways of answering a given exam question!

The solution notes for the most recent two year’s worth of examinations (with exceptions for 2020 and 2021) are held back by the department and only made available to supervisors and other teaching staff (marked with 🔒). Supervisors are instructed not to release hardcopy or electronic versions of these notes to students, although they may be shown to students during supervisions when helpful. Access to any solution notes here requires a Raven login, i.e. they are not public.

Making corrections: Question setters who want to amend solution notes can find the source files under /anfs/www/tripospapers/ and may email updated files to pagemaster.

  • 2023 Paper 2 Question 3 – 🔒solution notes
  • 2023 Paper 2 Question 4 – 🔒solution notes
  • 2022 Paper 2 Question 3 – 🔒solution notes
  • 2022 Paper 2 Question 4 – 🔒solution notes
  • 2021 Paper 2 Question 3 – solution notes
  • 2021 Paper 2 Question 4 – solution notes
  • 2020 Paper 2 Question 3 – solution notes
  • 2020 Paper 2 Question 4 – solution notes
  • 2019 Paper 2 Question 3 – solution notes
  • 2019 Paper 2 Question 4 – solution notes
  • 2018 Paper 2 Question 3 – solution notes
  • 2018 Paper 2 Question 4 – solution notes
  • 2017 Paper 2 Question 3 – solution notes
  • 2017 Paper 2 Question 4 – solution notes
  • 2016 Paper 2 Question 3 – solution notes
  • 2016 Paper 2 Question 4 – solution notes
  • 2015 Paper 2 Question 3 – solution notes
  • 2015 Paper 2 Question 4 – solution notes
  • 2014 Paper 2 Question 3 – solution notes
  • 2014 Paper 2 Question 4 – solution notes
  • 2013 Paper 2 Question 3 – solution notes
  • 2013 Paper 2 Question 4 – solution notes
  • 2012 Paper 2 Question 3 – solution notes
  • 2012 Paper 2 Question 4 – solution notes
  • 2011 Paper 2 Question 3 – solution notes
  • 2011 Paper 2 Question 4 – solution notes
  • 2010 Paper 2 Question 3 – solution notes
  • 2010 Paper 2 Question 4 – solution notes
  • 2009 Paper 2 Question 3 – solution notes
  • 2009 Paper 2 Question 4 – solution notes
  • 2008 Paper 1 Question 2 – solution notes
  • 2008 Paper 1 Question 7 – solution notes
  • 2008 Paper 1 Question 8 – solution notes
  • 2007 Paper 1 Question 2 – solution notes
  • 2007 Paper 1 Question 7 – solution notes
  • 2007 Paper 1 Question 8 – solution notes
  • 2006 Paper 1 Question 2 – solution notes
  • 2006 Paper 1 Question 7 – solution notes
  • 2006 Paper 1 Question 8 – solution notes
  • 2005 Paper 1 Question 4
  • 2005 Paper 1 Question 11
  • 2005 Paper 1 Question 12
  • 2004 Paper 1 Question 4
  • 2004 Paper 1 Question 11
  • 2004 Paper 1 Question 12
  • 2003 Paper 1 Question 4
  • 2003 Paper 1 Question 11
  • 2003 Paper 1 Question 12
  • 2002 Paper 1 Question 4
  • 2002 Paper 1 Question 11
  • 2002 Paper 1 Question 12
  • 2001 Paper 1 Question 4
  • 2001 Paper 1 Question 11
  • 2001 Paper 1 Question 12
  • 2000 Paper 1 Question 3
  • 2000 Paper 1 Question 11
  • 2000 Paper 1 Question 12
  • 1999 Paper 1 Question 4
  • 1999 Paper 1 Question 11
  • 1999 Paper 1 Question 12
  • 1998 Paper 1 Question 4
  • 1998 Paper 1 Question 11
  • 1998 Paper 1 Question 12
  • 1997 Paper 1 Question 4
  • 1997 Paper 1 Question 11
  • 1997 Paper 1 Question 12
  • 1994 Paper 10 Question 6
  • 1993 Paper 10 Question 5

🔒 = access to solution notes is restricted to cl-supervisors, teaching, wednesday, undergrad-directors-of-studies .

  • University A-Z
  • Contact the University
  • Accessibility
  • Freedom of information
  • Terms and conditions
  • Undergraduate
  • Spotlight on...
  • About research at Cambridge

Academia.edu no longer supports Internet Explorer.

To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to  upgrade your browser .

Enter the email address you signed up with and we'll email you a reset link.

  • We're Hiring!
  • Help Center

paper cover thumbnail

TERM PAPER OF OPERATING SYSTEM CSE-316 TOPIC:-COMPARISON OF MEMORY MANAGEMENT OF WINDOWS WITH LINUX

Profile image of My Fashion Support

We will be comparing the Memory Management (MM) Sub-Systems of these operating systems -Linux 2.4 and Windows. Windows was chosen since it is a very popular operating system for use as a desktop especially with beginners, and has now evolved into a mature operating system. Linux was chosen because it is growing more and more popular by the day, and seems to have an important place in the future.

Related Papers

ALI SAADOON AHMED

ALI S A A D O O N AHMED

This report briefly describes virtual storage, its structure, operation, and uses. Today's software is developed with virtual memory and its user-friendliness is strong and dynamic. The form of virtual memory is developed primarily based on a concept of demand pagination mechanism. The developed software requires a memory unit for performance concerning the application. When we prefer to run an additional method at an equal time as the work apparatus take responsibility for making sure that there is sufficient memory for each process. This report provides complete recordings about digital memory, its uses, when we want it and how it is used. All packets are stored in the eternal memory. When an application is made, it is initially loaded into the essential memory, i.e., RAM (random access memory) which is expensive, and which is why computers limited the amount of RAM. Now day Virtual memory is used in all modern functions because it helps us prolong the most important memory unless we increase the expensive measurement of RAM. We extend the basic memory using secondary memory. Virtual memory offers two benefits. First, it extends the bodily reminisce with the assist of secondary memory. Second, it offers us memory protection because each virtual plating is translated at a body address. Index Terms-Virtual memory, virtual memory implementation, memory protection, demand paging, swaps in and swap out demand page.

term paper on operating system

International Journal of Engineering Research and Technology (IJERT)

IJERT Journal

https://www.ijert.org/hardware-realization-of-address-translation-mechanism-for-memory-management-unit https://www.ijert.org/research/hardware-realization-of-address-translation-mechanism-for-memory-management-unit-IJERTV3IS060825.pdf In today's modern world virtual memory plays a vital role in giving a hardware support to the processors. In this work the mechanism of translating virtual memory address to physical address is explored as a hardware implementation. A Segmentation Unit and a Paging Unit is designed and developed which maps logical to linear address and linear to physical address respectively. The user program deals only with the logical addresses rather than the actual physical addresses. The real logical to physical address translation is done within the MMU. In a well-designed virtual-memory system, the main memory holds only the most often used portions of a process's address space, other portions are stored on disk and retrieved as needed. This creates the illusion of a single-level store with the access time of random access main memory rather than that of a disk. This translation occurs at the granularity of pages, with support from hardware found in MMU. Hence the work done to date is a hardware realization of Segmentation Unit and Paging Unit and the actual hardware blocks needed to design and develop them.

Shridhar Dixit

This research report gives a general description of virtual memory systems. The mechanisms and policies and their effect on the operation and efficiency of virtual memory are explained. A virtual memory using a real time virtual address decoder, to decode 32 bits of virtual address for the secondary memory to obtain the primary address location is discussed. The decoder is developed with the use of associative or content-addressable memories. Replacement algorithms, used for selecting the pages of the main memory to be replaced, are described. The hardware implementation of the least recently used and least often used replacement policies using associative memories is presented.

Janusz Zalewski

Proceedings of the twentieth annual ACM symposium on Theory of computing - STOC '88

Ashok Chandra

Arslan Naveed

Virtualization is an abstraction technique that allow hardware resources to run multiple operating systems as they are running on their sole hardware. It creates an illusion that trick different systems softwares as they are running on their own native hardware, like running MAC OS on Dell or HP computers. Normally, the operating system use techniques like paging or segmentation to share memory among different processes. For safe implementation in virtualized environment, hypervisors do not afford uninterrupted access to hardware assets. Hypervisor is a software or hardware that run virtual machines, like VMWare, Xen etc. There are many issues in dual control of native OS and Hypervisor on memory management and the lack of logics behind virtual machines managing memory. In this paper we will survey the different virtual machines and the best suited Operating Systems for creating the best suited virtualized environment. The goal of virtualization is to increase the physical machine utilization and save the cost. In this survey all the challenges we have in managing the memory in an abstracted environment will we discussed. Some future work and state of the art work will be debated. The memory management techniques and there comparisons will be discussed in detail. Techniques to increase memory utilization will also be discuss and compared in detail.

Mohammad Mushfequr Rahman

This paper analyzes an operating system’s memory management. The report conveys the key areas of memory management-hardware memory management, operating memory management, and application memory management. The content explains the problems relating to memory management. The conclusion includes which operating system is the best for one's computer and recommends solutions to memory management problems.

Diego Ambrosini

Persistence, in relation to computer memories, refers to the ability to retain the data in time, without the need of any power supply. Until now, persistence has been always supplied by hard disks or Flash memory drives. Regarding memories, persistence has been until now conceived as a slow service, while volatility has been thought in relation to speed, as it happens in DRAM and in SRAM. Such a dichotomy represents a bottleneck hard to bypass. The panorama of memory devices is changing: new memory technologies are being currently developed, and are expected to be ready for commercialization in the next years. These new technologies will offer features that represent a major qualitative change: these memories will be fast and persistent. This work aims to understand how these new technologies will integrate into operating systems, and to which extent they have the potential to change their current design. Therefore, in the intent to gain this understanding, I have followed these goals throughout the work: - to analyze the economical and technological causes that are triggering these qualitative changes; - to present the new technologies, along with a classification and a description of their features; - to analyze the effects that these technologies might have on models that are currently used in the design of operating systems; - to present and summarize both the opportunities and the potential issues that operating system designers will have to manage in order to use conveniently such new memory devices; - to analyze the proposals found in scientific literature to exploit these new technologies. Following the structure of the title, the first chapter is focused mainly on memory devices, whereas the second chapter will be centered on operating systems. The first chapter, initially, tries to grasp the causes of the expected technological change, beginning with economical observations. Subsequently, the chapter contains some considerations about how different but complementary aspects of the economical relation are urging the semiconductor industry to find new memory technologies, able to satisfy the increasing demand of features and performances. Afterwards, the paper shifts its focus on current technologies and their features. After a brief summary of each specific technology, a short description about the issues shared among all current charge-based technologies follows. Then, the reader finds a presentation of each of the new memory technologies, presented following the order of the ITRS taxonomy related to memory devices: firstly are presented the ones in a prototypical development stage (MRAM, Fe-RAM, PCRAM), then followed by those in an emerging development stage (Ferroelectric RAM, ReRAM, Mott Memory, Macromolecular and molecular memory). The second chapter aims, in its first part, to understand the extent to which current funding models (Von Neumann model and the memory hierarchy) are influenced by the new technologies. As far as the computational model (fetch-decode-execute) does not change, the validity of the Von Neumann model seems to hold. Conversely, as far as it concerns the memory hierarchy, the changes might be extensive: two new layers should be added near to DRAM. After these considerations, some additional observations will be made about how persistence is just a technological property, and how a specific model would be necessary to explicit how an operating system uses it. Afterwards, there will be a description of the use of non-volatile memory technologies such as Phase Change RAM inside fast SSDs. Even if this approach is quite traditional, the scientific literature explains how faster devices would require a deep restructuring of the I/O stack. Such a restructuring is required because the current I/O stack has been developed concentrating on functionality, not efficiency. Fast devices would instead require a high efficiency. This second chapter will then present the most appealing use of persistent memories: as storage class memory, either in replacement of common DRAM, either in tandem with DRAM on the same memory bus. This approach has per se a higher level of complexity, and under the umbrella of SCM there are many viable declinations of use. Firstly some preliminary observations common with all the approaches are made. Then, two easier approaches are presented (no-change and Whole System Persistence). Finally, the approaches that aim to develop a persistent-memory aware operating system will be introduced: most of them uses the file system paradigm to exploit persistence into main memory. The paper proceeds in presenting firstly some peculiarities of the current I/O path used in the Linux operating systems, remarking how caching already moved persistence into main memory; afterwards, some other considerations about consistency are made. Those observations then are used to understand the main differences between standard I/O in respect with memory operations. After a brief presentation of some incomplete approaches proposed by the author, a framework to classify the thoroughness used by the different approaches follows. The paper continues by reporting the efforts of the Linux community and then introduces each specific approach found in literature: Quill, BPFS, PRAMFS, PMFS, SCMFS. Concluding the part about file system, there will be some remarks about integration, a mean to use both file system services and memory services from the same persistent memory. Finally, persistent-memory awareness into user applications, along with a brief introduction of the two main proposals coming from two academic research groups will be presented.

Benoit Sonntag

This article is the conclusions of a study on the implementation of a new oriented object operating system. Indeed, starting from the analysis of our needs in communication for the development for our object mechanism, various problems appeared. In this study, we reveal that the poor flexibility in memory management is the reflection of the lack of segmentation usage. Nowadays, some processors offer advanced mecanisms of memory management through segmentation. Unfortunately, they are unusable some context as ANSI C programming. At first sight, the implementation of an operating system using such a mecanism would need prior rewriting of the stack in order to take account for memory allocation indexes. This article brings a simple and effective solution to allow processor segmentation. Moreover, this solution does not require any massive modification of the stack.

International Journal of Multidisciplinary Research and Publications (IJMRAP)

Zryan Rashid

Memory management refers to all methods used in memory to store code and data, track use, and, where possible, retrieve memory space. This means that the physical chips and a logical address space are mapped through the memory map at a low level. Application programs could be used in higher-level virtual spaces with memory management unit (MMU) to create a contiguous memory impression. This paper proposed a review on operating system function and the rule of memory management unit in providing different techniques for various process in operating system. This paper shows the experiences of a group of researchers in operating systems development in many deferent techniques.

RELATED PAPERS

Biological Journal of the Linnean Society

Darrin Bann

Roberta Kovac

Etelka Szőnyi

Nike Suryani

Paúl Cabrera

Pakistan Journal of Nutrition

hsc.usf.edu

Rodolfo Boucugnani

Clinical Cancer Research

Debora Lima Moreno

Pesquisas em Geociências

Erivaldo Silva

DISTILAT JURNAL TEKNOLOGI SEPARASI

RIZKY MAHENDRA

Journal of Applied Physiology

Jitka Žurmanová

Nick Bailey

BJU International

Marta Romero

Journal of Endocrinology

C. Farquharson

California Journal of Politics and Policy

Thad Kousser

Applied Sciences

Roberto A Lopez-Anido

Journal of Vision

Sunčica Zdravković

European Journal of Mineralogy

Claudine Durand

Harold Javitz

The Journal of Bone & Joint Surgery

Maureen Twiddy

Frontiers in Immunology

aijaz sultan parray

  •   We're Hiring!
  •   Help Center
  • Find new research papers in:
  • Health Sciences
  • Earth Sciences
  • Cognitive Science
  • Mathematics
  • Computer Science
  • Academia ©2024

CS 261: Research Topics in Operating Systems (2021)

Some links to papers are links to the ACM’s site. You may need to use the Harvard VPN to get access to the papers via those links. Alternate links will be provided.

Meeting 1 (1/26): Overview

Operating system architectures, meeting 2 (1/28): multics and unix.

“Multics—The first seven years” , Corbató FJ, Saltzer JH, and Clingen CT (1972)

“Protection in an information processing utility” , Graham RM (1968)

“The evolution of the Unix time-sharing system” , Ritchie DM (1984)

Additional resources

The Multicians web site for additional information on Multics, including extensive stories and Multics source code.

Technical: The Multics input/output system , Feiertag RJ and Organick EI, for a description of Multics I/O to contrast with Unix I/O.

Unix and Multics , Tom Van Vleck.

… I remarked to Dennis that easily half the code I was writing in Multics was error recovery code. He said, "We left all that stuff out. If there's an error, we have this routine called panic() , and when it is called, the machine crashes, and you holler down the hall, 'Hey, reboot it.'"

The Louisiana State Trooper Story

The IBM 7094 and CTSS

This describes the history of the system that preceded Multics, CTSS (the Compatible Time Sharing System). It also contains one of my favorite stories about the early computing days: “IBM had been very generous to MIT in the fifties and sixties, donating or discounting its biggest scientific computers. When a new top of the line 36-bit scientific machine came out, MIT expected to get one. In the early sixties, the deal was that MIT got one 8-hour shift, all the other New England colleges and universities got a shift, and the third shift was available to IBM for its own use. One use IBM made of its share was yacht handicapping: the President of IBM raced big yachts on Long Island Sound, and these boats were assigned handicap points by a complicated formula. There was a special job deck kept at the MIT Computation Center, and if a request came in to run it, operators were to stop whatever was running on the machine and do the yacht handicapping job immediately.”

Using Ring 5 , Randy Saunders.

"All Multics User functions work in Ring 5." I have that EMail (from Dave Bergum) framed on my wall to this date. … All the documentation clearly states that system software has ring brackets of [1,5,5] so that it runs equally in both rings 4 and 5. However, the PL/I compiler creates segments with ring brackets of [4,4,4] by default. … I found each and every place CNO had fixed a program without resetting the ring brackets correctly. It started out 5 a day, and in 3 months it was down to one a week.”

Bell Systems Technical Journal 57(6) Part 2: Unix Time-sharing System (July–August 1978)

This volume contains some of the first broadly-accessible descriptions of Unix. Individual articles are available on archive.org . As of late January 2021, you can buy a physical copy on Amazon for $2,996. Interesting articles include Thompson on Unix implementation, Ritchie’s retrospective, and several articles on actual applications, especially document preparation.

Meeting 3 (2/2): Microkernels

“The nucleus of a multiprogramming system” , Brinch Hansen P (1970).

“Toward real microkernels” , Liedtke J (1996).

“Are virtual machine monitors microkernels done right?” , Hand S, Warfield A, Fraser K, Kotsovinos E, Magenheimer DJ (2005).

Supplemental reading

“Improving IPC by kernel design” , Liedtke J (1993). Article introducing the first microbenchmark-performant microkernel.

“Are virtual machine monitors microkernels done right?” , Heiser G, Uhlig V, LeVasseur J (2006).

“From L3 to seL4: What have we learnt in 20 years of L4 microkernels?” , Elphinstone K, Heiser G (2013).

Retained: Minimality as key design principle. Replaced: Synchronous IPC augmented with (seL4, NOVA, Fiasco.OC) or replaced by (OKL4) asynchronous notification. Replaced: Physical by virtual message registers. Abandoned: Long IPC. Replaced: Thread IDs by port-like IPC endpoints as message destinations. Abandoned: IPC timeouts in seL4, OKL4. Abandoned: Clans and chiefs. Retained: User-level drivers as a core feature. Abandoned: Hierarchical process management. Multiple approaches: Some L4 kernels retain the model of recursive address-space construc- tion, while seL4 and OKL4 originate mappings from frames. Added: User-level control over kernel memory in seL4, kernel memory quota in Fiasco.OC. Unresolved: Principled, policy-free control of CPU time. Unresolved: Handling of multicore processors in the age of verification. Replaced: Process kernel by event kernel in seL4, OKL4 and NOVA. Abandoned: Virtual TCB addressing. … Abandoned: C++ for seL4 and OKL4.

Meeting 4 (2/4): Exokernels

“Exterminate all operating systems abstractions” , Engler DE, Kaashoek MF (1995).

“Exokernel: an operating system architecture for application-level resource management” , Engler DE, Kaashoek MF, O’Toole J (1995).

“The nonkernel: a kernel designed for the cloud” , Ben-Yehuda M, Peleg O, Ben-Yehuda OA, Smolyar I, Tsafrir D (2013).

“Application performance and flexibility on exokernel systems” , Kaashoek MF, Engler DR, Ganger GR, Briceño HM, Hunt R, Mazières D, Pinckney T, Grimm R, Jannotti J, Mackenzie K (1997).

Particularly worth reading is section 4, Multiplexing Stable Storage, which contains one of the most overcomplicated designs for stable storage imaginable. It’s instructive: if your principles end up here, might there be something wrong with your principles?

“Fast and flexible application-level networking on exokernel systems” , Ganger GR, Engler DE, Kaashoek MF, Briceño HM, Hunt R, Pinckney T (2002).

Particularly worth reading is section 8, Discussion: “The construction and revision of the Xok/ExOS networking support came with several lessons and controversial design decisions.”

Meeting 5 (2/9): Security

“EROS: A fast capability system” , Shapiro JS, Smith JM, Farber DJ (1999).

“Labels and event processes in the Asbestos operating system” , Vandebogart S, Efstathopoulos P, Kohler E, Krohn M, Frey C, Ziegler D, Kaashoek MF, Morris R, Mazières D (2007).

This paper covers too much ground. On the first read, skip sections 4–6.

Meeting 6 (2/11): I/O

“Arrakis: The operating system is the control plane” (PDF) , Peter S, Li J, Zhang I, Ports DRK, Woos D, Krishnamurthy A, Anderson T, Roscoe T (2014)

“The IX Operating System: Combining Low Latency, High Throughput, and Efficiency in a Protected Dataplane” , Belay A, Prekas G, Primorac M, Klimovic A, Grossman S, Kozyrakis C, Bugnion E (2016) — read Sections 1–4 first (return to the rest if you have time)

“I'm Not Dead Yet!: The Role of the Operating System in a Kernel-Bypass Era” , Zhang I, Liu J, Austin A, Roberts ML, Badam A (2019)

  • “The multikernel: A new OS architecture for scalable multicore systems” , Baumann A, Barham P, Dagand PE, Harris T, Isaacs R, Peter S, Roscoe T, Schüpach A, Singhana A (2009); this describes the Barrelfish system on which Arrakis is based

Meeting 7 (2/16): Speculative designs

From least to most speculative:

“Unified high-performance I/O: One Stack to Rule Them All” (PDF) , Trivedi A, Stuedi P, Metzler B, Pletka R, Fitch BG, Gross TR (2013)

“The Case for Less Predictable Operating System Behavior” (PDF) , Sun R, Porter DE, Oliveira D, Bishop M (2015)

“Quantum operating systems” , Corrigan-Gibbs H, Wu DJ, Boneh D (2017)

“Pursue robust indefinite scalability” , Ackley DH, Cannon DC (2013)

Meeting 8 (2/18): Log-structured file system

“The Design and Implementation of a Log-Structured File System” , Rosenblum M, Ousterhout J (1992)

“Logging versus Clustering: A Performance Evaluation”

  • Read the abstract of the paper ; scan further if you’d like
  • Then poke around the linked critiques

Meeting 9 (2/23): Consistency

“Generalized file system dependencies” , Frost C, Mammarella M, Kohler E, de los Reyes A, Hovsepian S, Matsuoka A, Zhang L (2007)

“Application crash consistency and performance with CCFS” , Sankaranarayana Pillai T, Alagappan R, Lu L, Chidambaram V, Arpaci-Dusseau AC, Arpaci-Dusseau RH (2017)

Meeting 10 (2/25): Transactions and speculation

“Rethink the sync” , Nightingale EB, Veeraraghavzn K, Chen PM, Flinn J (2006)

“Operating system transactions” , Porter DE, Hofmann OS, Rossbach CJ, Benn E, Witchel E (2009)

Meeting 11 (3/2): Speculative designs

“Can We Store the Whole World's Data in DNA Storage?”

“A tale of two abstractions: The case for object space”

“File systems as processes”

“Preserving hidden data with an ever-changing disk”

More, if you’re hungry for it

  • “Breaking Apart the VFS for Managing File Systems”

Virtualization

Meeting 14 (3/11): virtual machines and containers.

“Xen and the Art of Virtualization” , Barham P, Dragovic B, Fraser K, Hand S, Harris T, Ho A, Neugebauer R, Pratt I, Warfield A (2003)

“Blending containers and virtual machines: A study of Firecracker and gVisor” , Anjali, Caraz-Harter T, Swift MM (2020)

Meeting 15 (3/18): Virtual memory and virtual devices

“Memory resource management in VMware ESX Server” , Waldspurger CA (2002)

“Opportunistic flooding to improve TCP transmit performance in virtualized clouds” , Gamage S, Kangarlou A, Kompella RR, Xu D (2011)

Meeting 16 (3/23): Speculative designs

“The Best of Both Worlds with On-Demand Virtualization” , Kooburat T, Swift M (2011)

“The NIC is the Hypervisor: Bare-Metal Guests in IaaS Clouds” , Mogul JC, Mudigonda J, Santos JR, Turner Y (2013)

“vPipe: One Pipe to Connect Them All!” , Gamage S, Kompella R, Xu D (2013)

“Scalable Cloud Security via Asynchronous Virtual Machine Introspection” , Rajasekaran S, Ni Z, Chawla HS, Shah N, Wood T (2016)

Distributed systems

Meeting 17 (3/25): distributed systems history.

“Grapevine: an exercise in distributed computing” , Birrell AD, Levin R, Schroeder MD, Needham RM (1982)

“Implementing remote procedure calls” , Birrell AD, Nelson BJ (1984)

Skim : “Time, clocks, and the ordering of events in a distributed system” , Lamport L (1978)

Meeting 18 (3/30): Paxos

“Paxos made simple” , Lamport L (2001)

“Paxos made live: an engineering perspective” , Chanra T, Griesemer R, Redston J (2007)

“In search of an understandable consensus algorithm” , Ongaro D, Ousterhout J (2014)

  • Adrian Colyer’s consensus series links to ten papers, especially:
  • “Raft Refloated: Do we have consensus?” , Howard H, Schwarzkopf M, Madhavapeddy A, Crowcroft J (2015)
  • A later update from overlapping authors: “Paxos vs. Raft: Have we reached consensus on distributed consensus?” , Howard H, Mortier R (2020)
  • “Understanding Paxos” , notes by Paul Krzyzanowski (2018); includes some failure examples
  • One-slide Paxos pseudocode , Robert Morris (2014)

Meeting 19 (4/1): Review of replication results

Meeting 20 (4/6): project discussion, meeting 21 (4/8): industrial consistency.

“Scaling Memcache at Facebook” , Nishtala R, Fugal H, Grimm S, Kwiatkowski M, Lee H, Li HC, McElroy R, Paleczny M, Peek D, Saab P, Stafford D, Tung T, Venkataramani V (2013)

“Millions of Tiny Databases” , Brooker M, Chen T, Ping F (2020)

Meeting 22 (4/13): Short papers and speculative designs

“Scalability! But at what COST?” , McSherry F, Isard M, Murray DG (2015)

“What bugs cause production cloud incidents?” , Liu H, Lu S, Musuvathi M, Nath S (2019)

“Escape Capsule: Explicit State Is Robust and Scalable” , Rajagopalan S, Williams D, Jamjoom H, Warfield A (2013)

“Music-defined networking” , Hogan M, Esposito F (2018)

  • Too networking-centric for us, but fun: “Delay is Not an Option: Low Latency Routing in Space” , Handley M (2018)
  • A useful taxonomy: “When Should The Network Be The Computer?” , Ports DRK, Nelson J (2019)

Meeting 23 (4/20): The M Group

“All File Systems Are Not Created Equal: On the Complexity of Crafting Crash-Consistent Applications” , Pillai TS, Chidambaram V, Alagappan R, Al-Kiswany S, Arpaci-Dusseau AC, Arpaci-Dusseau RH (2014)

“Crash Consistency Validation Made Easy” , Jiang Y, Chen H, Qin F, Xu C, Ma X, Lu J (2016)

Meeting 24 (4/22): NVM and Juice

“Persistent Memcached: Bringing Legacy Code to Byte-Addressable Persistent Memory” , Marathe VJ, Seltzer M, Byan S, Harris T

“NVMcached: An NVM-based Key-Value Cache” , Wu X, Ni F, Zhang L, Wang Y, Ren Y, Hack M, Shao Z, Jiang S (2016)

“Cloudburst: stateful functions-as-a-service” , Sreekanti V, Wu C, Lin XC, Schleier-Smith J, Gonzalez JE, Hellerstein JM, Tumanov A (2020)

  • Adrian Colyer’s take

Meeting 25 (4/27): Scheduling

  • “The Linux Scheduler: A Decade of Wasted Cores” , Lozi JP, Lepers B, Funston J, Gaud F, Quéma V, Fedorova A (2016)
  • Free Samples >
  • Type of Paper >

Operating System Term Papers Samples That Help You Write Better, Faster & with Gusto

When you need a light push to compose a proper Operating System Term Paper, nothing does the job finer than a top-level sample you can use for inspiration or as a standard to follow. And hardly can you find a finer place with so many remarkable Term Paper samples than WePapers.com free database of Operating System papers. Each Operating System Term Papers example you discover here can do one or several of these things for you: give you a clue about an exciting topic; motivate you to come up with an authentic outlook on a well-examined question; showcase the best writing practices you can use; and/or present you with proper structure patterns. Apply this precious insight to develop a superior paper of your own or use our competent writers' assistance to get an original Operating System Term Paper sample delivered right to your email inbox.

We use cookies to improve your experience with our site. Please accept before continuing or read our cookie policy here .

Wait, have you seen our prices?

operating system IEEE PAPERS AND PROJECTS-2020

An Operating System (OS) is an interface between a computer user and computer hardware. An operating system is a software which performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk drives and printers

FREE IEEE PAPER AND PROJECTS

Ieee projects 2022, seminar reports, free ieee projects ieee papers.

  • COLLEGE TERM PAPERS
  • CUSTOM TERM PAPERS
  • MORE TERM PAPERS
  • HIGH SCHOOL TERM PAPERS

We GUARANTEE that you’ll find an EXEMPLARY College Level Term Paper, Essay, Book Report or Research Paper in seconds or we will write a BRAND NEW paper for you in just a FEW HOURS!!!

SEARCH RESULTS

YOU WERE LOOKING FOR : Operating Systems

Term Papers 1 - 29

In fifteen pages this paper discusses how computer operating systems must be protected from external threats and the compromising ... ...

In five pages this research paper discusses OS in terms of history and through a comparative analysis of MS DOS and UNIX. There i... ...

In fifteen pages these various computer operating systems are presented in an overview with pertinent information provided and a c... ...

This paper consists of eight pages and in a comparative analysis of these two Microsoft operating systems determines that Windows ... ...

This paper consists of five pages and assesses the strengths and weaknesses of each OS in order to determine which represents the ... ...

In 5 pages this paper examines hardware and operating systems in terms of their relationship with software architecture with its ... ...

In five pages this paper discusses the bundling of Java Development Kits on Mac operating systems. Two sources are listed in the ... ...

In seven pages the development of such computer operating systems as Linux, Microsoft NT, Novell, and Unix among others are examin... ...

In five pages this paper examines OS such as Windows, Unix, Linux, and J2EE by Sun that can be found on the Internet. Five source... ...

In six pages the hardware requirements of these 3 operating systems are compared and contrasted. Nine sources are cited in the bi... ...

In four pages the Linux v. Microsoft battle of the operating systems is examined. Five sources are cited in the bibliography.... ...

This 3 page paper compares three common operating systems: Windows NT/2000, Linux and Windows 2000 Server. There are 5 sources lis... ...

In ten pages this paper considers IT's OpenVMS system and its amazing rebirth courtesy of Hewlett Packard. Ten sources are cited ... ...

In four pages this paper contrasts and compares PC's Windows and Apple's Mac operating systems. Three sources are cited in the bi... ...

In fifteen pages the good, bad, and the ugly of these Microsoft operating systems are compared and contrasted. There are eight so... ...

Based on a fictitious case study the network diagrams are examined in order to discover the operating systems that are used in the... ...

The writer looks at the features and the functionality of these operating systems, examining the differences that may impact on us... ...

In a paper of four pages, the writer looks at threads and processes in operating systems. The phenomenon of deadlock is also exami... ...

In a paper of twelve pages, the writer looks at security measures for operating systems. A variety of such measures are compared a... ...

In eight pages this paper examines the necessity of financial statement auditing for the efficiency of capital markets with variou... ...

In eight pages this paper examines nonprofit and for profit financial planning in a consideration of differences. Four sources ar... ...

The facts of Harvard Business School Case 9 692 112 are presented in a paper consisting of five pages regarding the problematic 19... ...

In ten pages this paper discusses mortgage foreclosure cases and mortgage receiver duties appointed. Four sources are cited in th... ...

In seventeen pages this paper discuss management accounting and the impact of human behavior. Eleven sources are cited in the bib... ...

In eight pages this paper discusses employee and independent contractor status as it pertains to Internal Revenue Service classifi... ...

In seven pages this paper discusses auditing and the impact resulting from the Tax Relief Act of 1997 reform. Eight sources are c... ...

In eight pages a comparative analysis of these IRA account approaches is presented. Twelve sources are cited in the bibliography.... ...

In nine pages international accounting standards are examined in terms of investments, cash flow reporting, retirement benefits, t... ...

In a report consisting of seventeen pages the retirement issues baby boomers and women will face are discussed and a hypothetical ... ...

  • What are Points?
  • Terms of Use
  • College Term Papers
  • Custom Term Papers
  • More Term Papers
  • High School Term Papers
  • Full Paper Listing
  • Full Topic Listing
  • Upload a paper
  • Free Book Reports
  • Compare & Contrast Papers
  • Paper Examples
  • Persuasive Papers
  • College Admission Papers

We use cookies to enhance our website for you. Proceed if you agree to this policy or learn more about it.

  • Essay Database >
  • Essay Examples >
  • Essays Topics >
  • Essay on Friendship

History Of The Microsoft Operating System Research Paper

Type of paper: Research Paper

Topic: Friendship , Microsoft , Memory , Usability , Windows , Software , Development , Computers

Words: 1000

Published: 12/08/2019

ORDER PAPER LIKE THIS

History of the Microsoft Operating System

Before purchasing a computer, one would often take into account a variety of factors that would ensure that he gets the satisfaction of his purchase. He would consider the price, the memory capacity, the features and most especially, the operating system. There are many operating systems available in the market, but only one has retained its popularity since the development period of the computer in the early 1970s. This OS is known as the Microsoft Windows Operating System, developed by Microsoft Corporation. This paper will discuss the history of this popular and dynamic operating system and discover how it has changed since its inception. According to Jaeger (2008), the development of Microsoft Windows began with the introduction of MS-DOS, the original operating system for IBM computers in 1981. MS-DOS was developed by Tim Paterson through the use of Quick and Dirty Operating System or the QDOS system. Microsoft purchased the MS-DOS system Paterson developed from his company, the Seattle Computer Products. Unlike the operating systems such as Multics and UNIX, MS-DOS was limited in terms of its features. It was incapable of performing various tasks, and it was not able to utilize the x86 processor it runs. Through MS-DOS’s GUI, Windows was developed. Most of the Windows systems were variations of MS-DOS model, and up to present, it is still utilized by its current versions . After the MS-DOS, the Windows Platform has evolved to a more user-friendly interface. Ritchie (2003) stated that Apple was slowly becoming a contender in terms of a more user-friendly interface since Microsoft still has a bland interface. Microsoft created the first version of Windows by 1985. Since the entire Windows system is based from the MS-DOS system, both were combined in such a way that Windows became the user friendly interface of the operating system. Upon a few years, Windows 95 was released in 1995 which supported some of the innovations from the 3.1 version of the Windows series. Windows 95 boasted a 32- bit memory and a protective memory system, it also had a pre-emptive process scheduling for easy booting, and had a more user friendly interface, introducing color and easier options as compared to the MS-DOS series. This Windows series was concentrated to home and small office users upon its release since these groups did not require complex security and durability features. For large businesses and companies, Windows NT was introduced three years earlier for more critical applications and multi-tasking capacity. Windows NT provides users a more secured system as it hosts 32-bit memory addressing and memory protection, and it does not need MS-DOs to load. For MS-DOS related programs, the NT uses a virtual DOS machine to simulate MS-DOS. The VDM, however, has limits as it cannot fully utilize MS-DOS especially when the program directly accesses the hardware of the PC. The NT also has two main parts: the user mode and the kernel-mode. The Kernel-mode provides all the administrative functions of the operating system and undermines all of the system's functions. After NT and Windows 95, Windows 98 was introduced and it updated the Windows 95 operating system since it now includes plug and play functions and disk reading function. The Millennium Edition or Windows 2000 came later in 2000 and just enhanced Windows 98's abilities. The Windows 2000 edition also included the NT interface as it now enables data encryption and distributed processing. Administration capacity of users is also taken from the NT interface and is now on a user-friendly interface. After a year, Windows XP introduced a more upgraded version of Windows 2000/ME. It also introduced a more elaborate user interface depending on the edition purchased. Windows XP had the Professional edition, concentrated in a more sophisticated market while the Home Edition catered to the families who purchase a single PC for their homes and for those who would need a PC for standard applications such as Word, Excel and PowerPoint . In addition to Windows XP’s updated features, according to Coward and Knittel (2008), the operating system can emulate other operating systems. It also enables the user to determine which version of Windows it should use when a program requires an earlier version or not. A couple of years later, Windows Vista is launched in 2006, and it has thoroughly revised the user-interface known in Windows XP. The processing power of the Vista is more powerful than its predecessor. It has preserved Windows XP’s corporate networking features and added more multimedia capacities such as the use of projectors, slideshows and even DVD/CD burning. The Vista also has a variety of packages, ranging from Home, Ultimate and Professional. The Vista’s Home and Ultimate versions possess a wider range of Media Centre capabilities not found in its predecessor models. Vista’s interface is the best version yet like its successor, Windows 7. It competes with Apple’s OS X and Vista utilizes a specific programme known as the Aero, which gives out a more contemporary feel of the desktop, and the whole interface. Aero also acts like a glass, which enables users to view their wallpapers like a glass. Windows Vista also has a more effective security feature as it has its own unique spyware, anti-virus and malicious software removal tools . Eventually, the Windows Vista system is adapted to its successor, the Windows 7 operating system. Windows 7 is said to be Vista’s more stable release and at present, Microsoft is updating the 7 operating system to its Windows 8 series.

Cowart, R., & Knittel, B. (2008). Special Edition Using Microsoft Windows Vista. New York: Que Publishing. Jaeger, T. (2008). Operating system security. San Antonio: Morgan & Claypool Publishers. Ritchie, C. (2003). Operating systems incorporating UNIX and Windows. London: Cengage Learning EMEA.

double-banner

Cite this page

Share with friends using:

Removal Request

Removal Request

Finished papers: 1988

This paper is created by writer with

ID 285794834

If you want your paper to be:

Well-researched, fact-checked, and accurate

Original, fresh, based on current data

Eloquently written and immaculately formatted

275 words = 1 page double-spaced

submit your paper

Get your papers done by pros!

Other Pages

Report on why this tool, report on respondeat superior, research paper on women owned businesses are more efficient than men, sr hospital case study case study examples, essay on converse, working with the aging research paper, example of essay on environmental pollution, public relations essay examples, nclb and rti case study examples, addicted to incarceration critical thinking examples, essay on sepsis in the newborn, example of political risks research paper, example of essay on lincoln abraham the gettysburg address speech 1863, example of contract disputes research paper, investigations and digital forensics in the context of digital crime and digital research paper examples, example of research paper on the historical influences of mexican architect luis barragan, good essay on developing a brand, bud light radio critical thinking, free course work about communication integration, contaminates typically associated with wastewater discharge research paper samples, depth psychology essays, laocoon essays, amends essays, derision essays, legal profession essays, ileum essays, niacin essays, maidservant essays, newcomer essays, angina pectoris essays, bloomington essays, customizations essays, aptly essays, barajas essays, beest essays, ajani essays, human existence literature reviews, decent literature reviews, systematic review literature reviews, nineteenth century literature reviews, medieval literature reviews, fyodor literature reviews.

Password recovery email has been sent to [email protected]

Use your new password to log in

You are not register!

By clicking Register, you agree to our Terms of Service and that you have read our Privacy Policy .

Now you can download documents directly to your device!

Check your email! An email with your password has already been sent to you! Now you can download documents directly to your device.

or Use the QR code to Save this Paper to Your Phone

The sample is NOT original!

Short on a deadline?

Don't waste time. Get help with 11% off using code - GETWOWED

No, thanks! I'm fine with missing my deadline

Essays on Operating System

IMAGES

  1. Operating SYSTEM Paper

    term paper on operating system

  2. Operating Systems 2015-2016 BE Computer Engineering Semester 5 (TE

    term paper on operating system

  3. Operating systems Questions paper 4th SEM

    term paper on operating system

  4. Purpose Of An Operating System Free Essay Example

    term paper on operating system

  5. Operating Systems, Process Concept, and State Research Paper Example

    term paper on operating system

  6. BCA Operating System Question Paper HPU

    term paper on operating system

VIDEO

  1. Types Of Operating system Discuss in this Video || Operating system Types Discussion

  2. Types Of Operating system Discuss in this Video || Operating system Types information

  3. Operating System Question paper for PGDCA || Overview of Operating System question paper 2019, 2016

  4. Operating Systems Lec.4

  5. Operating Systems Lec.4

  6. Operating System (Types of Operating System) Live Class 07 Offline Batch

COMMENTS

  1. Term Paper on the Operating System

    Term Paper # 1. Definition of the Operating System: ADVERTISEMENTS: In early computers up to the second generation, the individual jobs for processing by the computer system used to be manually loaded, executed by the processor, again manually unloaded with some house-keeping operations, and then the next job used to be loaded manually again.

  2. Past exam papers: Operating Systems

    Past exam papers: Operating Systems. Solution notes are available for many past questions to local users. They were produced by question setters, primarily for the benefit of the examiners. These are not model answers: there may be many other good ways of answering a given exam question! The solution notes for the most recent two year's worth ...

  3. PDF Research Paper on Operating System

    An operating system (OS) is a collection of software that manages computer hardware resources and provides common services for computer programs. The operating system is an essential component of the system software in a computer system. Application programs usually require an operating system to function.

  4. (Pdf) Term Paper of Operating System Cse-316 Topic:-comparison of

    TERM PAPER OF OPERATING SYSTEM CSE-316 TOPIC:-COMPARISON OF MEMORY MANAGEMENT OF WINDOWS WITH LINUX My Fashion Support We will be comparing the Memory Management (MM) Sub-Systems of these operating systems -Linux 2.4 and Windows.

  5. CS 261: Research Topics in Operating Systems (2021)

    Unresolved: Principled, policy-free control of CPU time. Unresolved: Handling of multicore processors in the age of verification. Replaced: Process kernel by event kernel in seL4, OKL4 and NOVA. Abandoned: Virtual TCB addressing. …. Abandoned: C++ for seL4 and OKL4.

  6. Operating system (OS)

    operating system (OS), program that manages a computer's resources, especially the allocation of those resources among other programs. Typical resources include the central processing unit (CPU), computer memory, file storage, input/output (I/O) devices, and network connections.Management tasks include scheduling resource use to avoid conflicts and interference between programs.

  7. Operating System Term Paper

    Term Paper Operating System Term Papers Samples That Help You Write Better, Faster & with Gusto When you need a light push to compose a proper Operating System Term Paper, nothing does the job finer than a top-level sample you can use for inspiration or as a standard to follow.

  8. (PDF) Memory Management in Operating System

    This paper describes about the memory management in an operating system and it will demonstrate basic architecture of segmentation in an operating system and basic of its allocation. This...

  9. Proposed Challenges and Areas of Concern in Operating System Research

    When page fault occurs, an operating system has to perform the following tasks: Determine the location of data in auxiliary storage. Obtain an empty page frame in RAM to use as a container for data. Load the requested data into the available page frame. Update the page table to show the new data.

  10. A Comparative Analysis of Operating System: case study of Windows

    Every operating system has its own set of differences in terms of composition and structure, and this research focuses on the operating system's fundamental strengths and shortcomings.Linux ...

  11. 50556 PDFs

    Explore the latest full-text research PDFs, articles, conference papers, preprints and more on OPERATING SYSTEMS. Find methods information, sources, references or conduct a literature review on ...

  12. Operating System Term Papers Samples For Students

    Operating System Term Papers Samples For Students 22 samples of this type WowEssays.com paper writer service proudly presents to you an open-access catalog of Operating System Term Papers designed to help struggling students deal with their writing challenges.

  13. Operating System Essays: Examples, Topics, & Outlines

    Conclusions. Operating systems are the very core of the computers and control the basic functions of resource abstraction and resource sharing. Today, new, more efficient and robust operating systems are being developed that promise to offer entirely new levels of computing power, improved stability and overall security.

  14. operating system IEEE PAPERS AND PROJECTS-2020

    operating system IEEE PAPERS AND PROJECTS-2020. An Operating System (OS) is an interface between a computer user and computer hardware. An operating system is a software which performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk ...

  15. Operating Systems Term Paper Topics

    Term Papers 1 - 29 Computer Operating Systems, Security Threats and Protective Measures In fifteen pages this paper discusses how computer operating systems must be protected from external threats and the compromising ... ... premier Brief History of Computer Operating Systems

  16. The Unix Operating System Term Paper Examples

    From the decades, suppliers of the UNIX system have progressively integrated new technologies in the market so the UNIX systems in today's world provide functionality and more satisfaction as compared to operating system of other brands.At last but not the least, the choice of suppliers' and users' operating environment is the UNIX system.

  17. A Term Paper of Principle of Operating System On: Submitted To

    Semaphore - Free download as Word Doc (.doc / .docx), PDF File (.pdf), Text File (.txt) or read online for free. operating system term paper for lovely student

  18. History Of The Microsoft Operating System Research Paper

    This paper will discuss the history of this popular and dynamic operating system and discover how it has changed since its inception. According to Jaeger (2008), the development of Microsoft Windows began with the introduction of MS-DOS, the original operating system for IBM computers in 1981. MS-DOS was developed by Tim Paterson through the ...

  19. Essays on Operating System

    These essays cover topics such as the history of operating systems, their functionalities, types of operating systems, their architecture and design principles, security, and the role of operating systems in modern computing. They are written by experts in the field and offer valuable insights into the intricate workings of operating systems.

  20. Android Operating System

    Android Operating System. POS/355. June 19, 2013. Castle Phelps. Introduction. The "Android" operating system is in many users opinion the best mobile device operating system in use today. It allows mobile device manufacturers the ability to tailor the operating systems for the specific device it to be used on, In this essay we will talk ...

  21. Linux Operating Systems

    May 5, 2012 Linux is an operating system just like Windows, and MAC OS, but more along the same lines of the UNIX operating system, because they have some of the same features. Out of the three most popular operating systems, Linux is surprisingly enough is the least popular.

  22. CS604 (Operating System) Final Term Paper Fall 2023

    CS604 (Operating System) Final Term Paper Fall 2023 - Set 1 Rare Academy of ScienceEmail id: [email protected]#cs604 #cs604finaltermpaperfall202...

  23. Operating System

    Operating Systems have come a long way since the times of a separate windows system and Disk Operating System (DOS). Now, both systems are combined which made DOS obsolete. According to Capron (2001), "An operating system is a set of programs that lies between applications software and computer hardware; it is the fundamental software that ...