Operating System Is Responsible Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

The process is usually defined as a program example runs. Process management is an integral part of any modern day operating systems. The management process describes how to manage multiple operating system processes that are running on a particular instance of time.

The OS must allocate resources to process, enable the process to share and exchange information, protect the resources each process from other processes and enable synchronization between processes. To meet these requirements, the OS must maintain data structures for each process, which describes the country ownership and resources from that process, and that allows the OS to exert control over each process.

Multiprogramming systems explicitly allows multiple process exists at a particular time, where the only thing is using the CPU at any given moment, while the rest of the process of doing I/O or are waiting.

Process manager are the four main parts of the operating system. Apply the process of abstraction. This is by creating a model for how a process using CPU and system resources. A lot of the complexity of an operating system derived from the need for multiple processes to share the hardware at the same time. As a consequence of this goal, the process manager to implement CPU share (called scheduling), process synchronization mechanism and strategy of deadlock. In addition, the process manager to implement part of the operating system's protection and security.

Windows 7 has expanded greatly from its predecessor, such as Windows XP. It is now operating system multitasking prevention. According to Wikipedia (2013) UNIX is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT & T employees at Bell Labs. Both operating systems provide complete isolation between simultaneous users. There are some major differences in the management processes between the two which we will discuss in this paper.

2.0 Process Management In UNIX.

When we log on to the computer that is running UNIX, shell or a GUI began for our service processes the command. UNIX operating system continues to track users and their process and prevent the process from interfering with each other. The operating system does not come with any standard interface for user interaction. However, the process of shell on the computer that is running UNIX can connect to another computer to load third-party UIs.

Each process runs one program and initially has a single thread of control. In other words, have a program counter, which keeps track of the next instruction to be executed. Most versions of Unix allows the process to create additional threads once it starts running.

Figure 1:

Some processes can be running at the same time and must all be handled by the operating system. The Kernel needs to maintain data for each process that is running. The Data tell the OS in what countries the process, les, what users running it, etc. The information maintained in the process structure is also called the process control block (PCB).

UNIX uses two categories: process system process and user process. The system processes running in kernel mode and execute operating system code to perform administrative functions and households, such as memory allocation and the process of swapping. User processes operate in user mode to run user programs and utilities and kernel-mode to execute instructions that belong to the kernel. The user enters the process kernel mode by issuing an appeal system, when an exception (error) produced, or when an interrupt.

The process of creation in UNIX is done with the system call, the kernel fork (), aims to take advantage of the child process is to complete a specific subtask (or transmitted). When the request concerns, fork the operating system performs the following functions:

1. Allocate slots in the process table for the new process.

2. assign a unique ID process of a child process.

3. Make a copy of the parent process's image, with the exception of any shared memory.

4. This will add a counter for each file that is owned by a parent, to reflect that process up to now also have their files.-15-

5. Specify the process for children ready to run the country.

6. Back child ID number to the parent process, and a value of 0 to the child process.

All this work is done in kernel mode in the parent process. When the kernel has finished these functions can perform one of the following, as part of a routine Saturday: dispatchers

1. Stay in the parent process. Back to user mode control at the point of fork calls parents.

2. the Transfer of control of a child process. Child process starts executing at the same point in the code as a parent, that is on the back of a fork call.

3. Transfers control to other processes. Parent and child remaining in ready to run the country.

This may be difficult to visualize the process of creation method because both parents and

children who are executing the same piece of code. The difference is this: when returning from

fork occurs, the return parameters are tested. If the value is zero, then this is the child process and branches can be run for users according to continue program execution. If the value is not zero, then this is the parent process, and the main line of execution can continue.

Image X UNIX process state transition Diagram

Multiprogramming system is UNIX, so some may process, independent walking at the same time. Each user can have multiple active processes at once, so in a large system, there may be hundreds or even thousands of processes running.

Multitasking. UNIX is a multiuser, multiprocessing system. At a certain point, you can have many processes that are running on UNIX. As a result, UNIX is very efficient to create the process. Unix has been the prevention of multitasking, in which slices of time allocated by the Scheduler interrupts the routine or pre-empts the process to hand control to the next. Almost all modern operating systems support the preemption.

Multithreading. Most of the new multi-threaded UNIX kernel to take advantage of computer Multiproses (JUNIOR HIGH SCHOOL). At the beginning, UNIX does not expose the threads for the programmer. However, the POSIX features a user-programmable thread. There is a standard POSIX to threads (called Pthreads) that supports all versions of UNIX.

Hierarchy process. When a UNIX-based applications create a new process, a new process is being a child of the process that created it. This notion of hierarchy is important, and there are often calls for a system of manipulating the process. Two unique processes in UNIX. Process 0 is a special process created when booting the system; Basically, it is as a standard data structures loaded at boot time. This is a swapper process. In addition, the process of generating process 0

3.0 Process Management In Windows 7

Windows 7 has expanded greatly from its predecessor, such as Windows XP. It is now operating system multitasking prevention. As a result, Windows relies more heavily on the threads of the process. (A Thread is a building which allows parallel processing in the process.) Creates a new process is a relatively expensive operation while creating new threads is not as expensive as in terms of system resources such as memory and time. Therefore, application-oriented multiprocess on UNIX typically translate to multithread applications with the Windows platform, so it saves system resources such as memory and time.

When a user logs on interactively to a computer that is running Windows 7, Win32 subsystem identification graphics and authentication dynamic-link library (GINA) created the initial process for that user, known as desktop users, where all user interaction or activities take place. On the user's computer Desktop is loaded from the server. Only users who have login access to the desktop. Other users are not allowed to log on to the computer at the same time. However, if users use Terminal Services or Citrix, Windows 7 can operate in a server-centric mode just like UNIX.

Operating system Windows 7 supports multiple users simultaneously via the command line and GUI. The latter requires the use of Terminal Services Windows 7. Windows 7 comes with a version of "single user" that allows users one at a time (Windows 7) as well as the multiuser server version (Windows 7 Server). It is very rare for Windows 7 Server systems that have multiple simultaneous users of the command line.

In Windows 7, create a new thread is very efficient. Windows 7 capable applications use threads to take advantage of SMP computers and maintain interactive capabilities when several threads take a long time to execute.

Unlike UNIX, Windows 7 process does not share a hierarchical relationship. The process of creation of the receiving process and handling process ID was made, so the hierarchical relationship can be maintained or simulated if required by the application. However, the operating system treats all of proceedings as they belong to the same generation. Windows 7 provides a feature called job object, which enables different processes grouped together and adhere to a set of rules.

Each process in windows 7 contains one or more threads, and thread Windows 7 is the basic unit of execution. The threads are scheduled based on the usual factors: availability of resources such as CPU and physical memory, priority, justice, and so on. Windows has long supported multiprocessor systems, so that the thread can be assigned to separate processors in the computer.

Every process of Windows 7 including resources such as the following components:

• One or more threads.

• Virtual address space that is different from the address space of another process. Note that the shared memory mapped files share the physical memory, but the process of sharing will probably use different virtual addresses to access the mapped file.

• One or more segments of code, including code in the dll.

• One or more of the data segment containing global variables.

• The environment string with environment variable information, such as the current search path.

• The process heap.

• Resources such as open the grip and the other pile.

Each thread in the process of sharing code, global variables, strings, environment and resources. Each thread is scheduled independently, and the thread has the following elements:

• Stack procedure calls, interrupts, exceptions and automatic storage handlers.

• The thread local storage (TLS) - an array-like collection of instructions that giving each thread's ability to allocate storage to create its own unique data.

• An argument on the stack, from the fabric to create, which is usually unique to each thread.

• The context Structure, managed by the kernel, with a list of values.

The figure below shows the process with multiple threads. This figure shows the scheme and not the actual memory address, nor is it interested in scale.

4.0 Critical Comparison Of Process Management In UNIX And Windows 7

UNIX and Windows 7 OS is multitasking system which supports the processes and threads. They can be compared in some respects with regard to process management features;

One major difference between UNIX and Windows 7 is the implementation of several users on one computer. When a user logs on to a UNIX system, the shell process is started to command their services. Track users and their process, a UNIX operating system is able to track the process and prevent them from interfering with each other. This is particularly useful when all processes running on the server, which requires the use of the resources-especially with a lot of users and applications are quite large.

Another major difference between UNIX and Windows 7 is a process that has a UNIX hierarchy. When a new process is created by a UNIX application, being a child of the process that created it. This hierarchy is very important, so there is a call system to affect the child process. Windows 7 process on the contrary do share a hierarchical relationship. Accept and handle the process process ID was made, the process of creating a Windows 7 system can maintain hierarchical relationships or simulate if needed. Windows 7 operating system is usually treated as belonging to all processes in the same generation.

UNIX uses a daemon, Windows 7 has a service process. A Daemon is a process that is executed when a UNIX boot up which provide services to other applications. The Daemon usually does not interact with the user. Windows 7 is a service equivalent to a UNIX daemon. When the system is Windows 7, boot services may begin. This is a long running applications that do not interact with the user, so they do not have a user interface. The service continues to run during the logon session and they are controlled by the Windows 7 Service Control Manager.





Very efficient at creating processes

Relies more on threads as opposed to processes

Multiple Users

Creates a shell process to service user commands.

Creates an initial process for a user known as the desktop.

Supports multiple simultaneous users through the command line and GUI.

Allows only one user to be logged in at a time.

Provides complete isolation between user processes.

Provides complete isolation between user processes.


Most UNIX kernels are multithreaded to make use of symmetric multiprocessing (SMP) computers.

Windows 7 applications are capable of using SMP computers.

Process Hierarchy

When a UNIX application creates a new process, the new process becomes a child of the parent process.

Windows 7 processes do not have a hierarchical relationship and all processes are treated equally

5.0 Conclusion

For each user, Unix in General, and especially the Sun Solaris provides many more utilities for manipulating files and data from Windows 7 does not. For the corporate environment, Unix (notably Solaris) provides more control for administrators than Windows 7. Solaris, for example, allows administrators to mirror or stripe data across multiple disks to minimize the risk or optimize performance without 3rd party products-3.

Multitasking operating systems like Windows 7 and UNIX have to manage and control multiple processes simultaneously. Windows 7 operating system and UNIX support process and thread. Unix is much better handle multiple tasks for a single user or for multiple users from Windows 7.

In conclusion, the best way to choose between UNIX and Windows 7 is to determine the needs of the organization. If your organization uses most of Microsoft products, such as access, Front Page, VBScripts, it's probably or it is better to stick with Windows 7. But, if the reliability, compatibility and stability of universal concern, UNIX would probably be the way to go. For a programmer or for administrators, Unix provides more power and flexibility than Windows 7. For less sophisticated users, Windows 7 can often more easily installed and configured to run on hardware that is cheaper to run the desired 3rd party products. In short--Unix is better, Windows 7 much easier for less sophisticated users.

UNIX has a new approach to designing software. Because of the open-source UNIX, it attracts some very smart programmers who developed many applications. With this in mind, many designers choose to resolve software problems by creating simple tools that interconnects large application programs rather than create. In contrast, applications Windows 7 all proprietary and expensive. With UNIX, each generation extends, rather than replaces previous as Windows 7 is rarely needed to upgrade old and new-Unix are all compatible. The main reason for this is the way of UNIX, which is in a strong theoretical basis. There are many advantages to this, for example, a book that was written 20 years ago that discusses UNIX programming can still be used today. Imagine trying to figure out how to run Windows 7 XP with window 3.1 manual-it can't be done