Preview

Windows Process Management

Powerful Essays
Open Document
Open Document
15227 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
Windows Process Management
MP 64:2 4002 ,82 rebmetpeS , yadseuT 361 e gaP mf.60hc_traH

C H A P T E R

6

Process Management

A process contains its own independent virtual address space with both code and data, protected from other processes. Each process, in turn, contains one or more independently executing threads. A thread running within a process can create new threads, create new independent processes, and manage communication and synchronization between the objects. By creating and managing processes, applications can have multiple, concurrent tasks processing files, performing computations, or communicating with other networked systems. It is even possible to exploit multiple processors to speed processing. This chapter explains the basics of process management and also introduces the basic synchronization operations that will be used throughout the rest of the book. Windows Processes and Threads
Every process contains one or more threads, and the Windows thread is the basic executable unit. Threads are scheduled on the basis of the usual factors: availability of resources such as CPUs and physical memory, priority, fairness, and so on. Windows has supported symmetric multiprocessing (SMP) since NT4, so threads can be allocated to separate processors within a system. From the programmer’s perspective, each Windows process includes resources such as the following components: • One or more threads. • A virtual address space that is distinct from other processes’ address spaces, except where memory is explicitly shared. Note that shared memory-mapped files share physical memory, but the sharing processes will use different virtual addresses to access the mapped file. • One or more code segments, including code in DLLs. 163

MP 64:2 4002 ,82 rebmetpeS , yadseuT 461 e gaP mf.60hc_traH

164

CHAPTER 6

PROCESS MANAGEM ENT

• One or more data segments containing global variables. • Environment strings with environment variable information, such as the current search

You May Also Find These Documents Helpful

  • Better Essays

    Bsa/375 Ind Wk3

    • 1284 Words
    • 6 Pages

    . Idea Group Inc (IGI).Platt, M. (2002). Microsoft Architecture Overview. Retrieved August 24, 2009, fromhttp://msdn.microsoft.com/en-us/library/ms978007.aspxProcess Design (2008). Retrieved August 24, 2009, fromhttp://www.ips.invensys.com/en/products/processdesign/Pages/ProcessDesign-P002.aspx…

    • 1284 Words
    • 6 Pages
    Better Essays
  • Good Essays

    Nt1310 Unit 3 Os

    • 1341 Words
    • 6 Pages

    +• Synchronization: With multiple active processes having potential access to shared address spaces or shared I/O resources, care must be taken to provide effective synchronization. Synchronization is a facility that enforces mutual exclusion and event…

    • 1341 Words
    • 6 Pages
    Good Essays
  • Good Essays

    Sharing allows several processes to access the same portion of main memory (Stallings, 2012). When there are a number of processes executing the same program it is beneficial to allow each process to access the same copy of the program rather than have its own separate copy (Stallings, 2012,). The memory management system must therefore…

    • 573 Words
    • 3 Pages
    Good Essays
  • Good Essays

    One of the key functions of an operating system is the process management. Linux OS system is very dynamic with constantly changing computing needs. These needs tend to be centered on the process. Processes can be either long or short lived, so managing these processes is very important. Linux incorporates a very flexible design which contains a separate unit to take on the process management task. In a Linux operating system processes are created and represented by an allocated task_struct.…

    • 749 Words
    • 3 Pages
    Good Essays
  • Satisfactory Essays

    Operating System

    • 507 Words
    • 3 Pages

    4.6 As described in Section 4.5.2, Linux does not distinguish between processes and threads. Instead, Linux treats both in the same way, allowing a task to be more akin to a process or a thread depending on the set of flags passed to the clone() system call. However, many operating systems—such as Windows XP and Solaris—treat processes and threads differently. Typically, such systems use a notation wherein the data structure for a process contains pointers to the…

    • 507 Words
    • 3 Pages
    Satisfactory Essays
  • Powerful Essays

    Parallelism and Concurrency

    • 19352 Words
    • 78 Pages

    1.4 Acknowledgments . . . . . . . . . . . . . . . . . . .…

    • 19352 Words
    • 78 Pages
    Powerful Essays
  • Satisfactory Essays

    Assignment 1,Section I

    • 326 Words
    • 2 Pages

    Process management is an integral part of any modern day operating system (OS). The OS must allocate resources to processes, enable processes to share and exchange information, protect the resources of each process from other processes and enable synchronisation among processes. To meet these requirements, the OS must maintain adata structure for each process, which describes the state and resource ownership of that process, and which enables the OS to exert control over each process.…

    • 326 Words
    • 2 Pages
    Satisfactory Essays
  • Good Essays

    Process Management in Linux

    • 4243 Words
    • 17 Pages

    In Linux processes communicate with each other and with the kernel to coordinate their activities. Linux supports a number of Inter-Process Communication (IPC) mechanisms. Signals and pipes are two of them but Linux also supports the System V IPC mechanisms named after the Unix TM release in which they first appeared. Signals are one of the oldest inter-process communication methods used by Unix TM systems. The common Linux shells all allow redirection. For example $ ls | pr | lpr pipes the output from the ls command listing the directory's files into the standard input of the pr command which paginates them. Finally the standard output from the pr command is piped into the standard input of the lpr command which prints the results on the default printer. (2005,www.tldp.org)…

    • 4243 Words
    • 17 Pages
    Good Essays
  • Powerful Essays

    Network Operating Systems.

    • 2028 Words
    • 10 Pages

    Multi tasking is when the operating system seems to be performing two or more tasks at the same time, i.e. MS Word and MS Access, however these tasks are not actually running simultaneously as they are actually resident in memory processor is actually switching between tasks at a very high speed, therefore each user sees their own task as having priority. One disadvantage can be that the more programs that are run by the user, the more memory that is required. Multi Tasking can be split into two categories, co-operative and pre-emptive.…

    • 2028 Words
    • 10 Pages
    Powerful Essays
  • Better Essays

    My Sql Architecture

    • 1164 Words
    • 5 Pages

    and a thread is created for each. The threaded process is the heart of the executable pathway in…

    • 1164 Words
    • 5 Pages
    Better Essays
  • Powerful Essays

    Process Control

    • 6285 Words
    • 26 Pages

    Surge Tank Design CHE4042F Process Dynamics and Control Project 1 20 April 2013 Group 26 Table of Contents List of Figures ii List of Tables ii Glossary iii A. Analysis of Plant Data 1 B. Simulation of Surge Tank 2 i. Modelling the Surge Tank in Xcos 2 ii. Frequency Fluctuations in Density Data 5 iii.…

    • 6285 Words
    • 26 Pages
    Powerful Essays
  • Good Essays

    One of the most fundamental concepts of modern operating systems is the distinction between a program and the activity of executing a program. The former is a static set of directions, whereas the latter is a dynamic activity whose properties change as time progresses. The activity of executing a program under the control of the operating system is known as a process.…

    • 572 Words
    • 3 Pages
    Good Essays
  • Satisfactory Essays

    Memory Management

    • 442 Words
    • 2 Pages

    First, there is relocation, when a program is running, it may be swapped around to different locations, such as being moved over to the disk and then returned to the main memory. From there it can run quickly while other processes can be going on.…

    • 442 Words
    • 2 Pages
    Satisfactory Essays
  • Better Essays

    Hyper Threading Technology

    • 4539 Words
    • 19 Pages

    Hyper-Threading Technology brings the concept of simultaneous multi-threading to a general processor architecture. Hyper-Threading Technology makes a single physical processor appear as two logical processors; the physical execution resources are shared and the architecture state is duplicated for the two logical processors. From a software or architecture perspective, this means operating systems and user programs can schedule processes or threads to logical processors as they would on multiple physical processors. From a microarchitecture perspective, this means that instructions from both logical processors will persist and execute simultaneously on shared execution resources.…

    • 4539 Words
    • 19 Pages
    Better Essays
  • Better Essays

    Types Of Operating System

    • 1515 Words
    • 5 Pages

    C. Multitasking Operating System- A multitasking OS is famous by its ability to support concurrent execution of two or more active processes. Multitasking is usually implemented by maintaining code & data of several processes in memory simultaneously, & by multiplexing processor & I/O devices among them. Multitasking is often coupled with hardware & software support for memory protection in order to prevent erroneous processes from corrupting address spaces & behavior of other resident processes. Allows more than one program to run concurrently. The ability to execute more than one task at the same time, a task being a program is called as multitasking. The terms multitasking & multiprocessing are often used…

    • 1515 Words
    • 5 Pages
    Better Essays