Analyzing System Behavior: Howthe Operating System Can Help
|
|
|
- Marybeth Day
- 10 years ago
- Views:
Transcription
1 Analyzing System Behavior: Howthe Operating System Can Help Alexander Schmidt, Michael Sch öbel Hasso-Plattner-Institute at Universityof Potsdam { Abstract: Never touch arunning system! This proverb is essentially true when dealing with complex mature software systems that have been run for years. When it comes to modifying certain aspects due to performance enhancements or to customer needs, maintainers spend quite significant time to understand the behavior of the whole system. As is practice today,only static documentation is available for such systems which is unsuitable for understanding the behavior. In this paper, we present the Windows Monitoring Kernel (WMK), acustom-built version of the latest Windows 2003 Server operating system that includes a finegrained logging infrastructure for arbitraryoperating system (OS) kernel events. These events are suitable for monitoring a system s behavior at runtime. The WMK infrastructure is complemented by a reporting tool that visualizes these events and displays their dependencies with respect to some aspects. Furthermore, the WMK provides the possibility to use these events for understanding application behavior running in the Windows operating system. 1 Introduction Since the introduction of the Windows NT operating system in 1993, veryfewdetails about the kernel structure and behavior have been known to the research community. While UNIX and Linux sources are freely available for research and analysis, Windows NT has always been a closed source. In2006, Microsoft changed its policy for the kernel sources [PP06]. The published kernel sources are known asthe Windows Research Kernel 1,based on the latest release of Windows 2003 Server Enterprise Edition, and uncover the core part of the kernel. As only limited documentation is available of how things work inside the kernel, we prepared a modified WRK version, called Windows Monitoring Kernel (WMK). This paper presents the details of howwmkworks. WMK adds an event logging infrastructure to the Windows kernel that allows logging of any arbitrary function/activity inside the source code. We also provide a reporting tool that allows post-mortem analysis such as diagrams or graphs. 1 The WRK is available to academic institutions for research purposes [WRKa, WRKb]. The WRK can be used to build customized variants of the Windows kernel. It requires a running instance of a Windows Server 2003 Enterprise Edition, as it only provides amodified version of ntoskrnl.exe. 261
2 The main contributions are as follows: (1) We built a modified version of the Windows NT kernel, (2) we implemented an efficient event logging infrastructure therein, and (3) weimplemented atool that analyzes and visualizes recorded events. The rest of the paper is organized as follows: We firstly present the architecture of our event logging infrastructure. Secondly, we present two case studies highlighting the need for WMK for analyzing application specific behavior. Then, wewill giveabrief overview of existing event logging facilities, and finally, we will conclude and give some outlook on our future work. 2 The Windows Monitoring Kernel The basic idea of the Windows Monitoring Kernel (WMK) approach is to replace an existing Windows kernel (ntoskrnl.exe) with an instrumented one. After a reboot, the behavior of arbitraryapplications can be monitored. Figure 1gives an overviewof the WMK architecture. With slight modifications of the NT kernel, we provide the WMK event logging API to any NT subsystem; hence it can be used to log arbitraryevents. At the moment, the following events are logged: System service calls System calls are monitored to analyze which functionalities of the OS are required byan application. Time stamps help to identifythose kernel services that most of the time is spent in. Context switches Context switches denote the process of assigning the CPU from one thread to another. Logging this event is helpful to evaluate execution flows of a multi-threaded application. Wait events are triggered when a thread waits on a particular synchronization event and when a wait can be satisfied. In combination with context switch events, these events are useful to identify potential deadlocks. Process/thread creation and termination Process creation and termination mark the start and end point of an application s existence. Threads denote different execution flows through an application and are interpreted as actors of an application. Each monitored event creates an event log entry which contains atime stamp, aunique type identifier, anevent specific, variable-length data set, and the data set length. Event log entries are stored within an event log buffer. This buffer is allocated in non-pageable kernel memory and is created at boot time. To enhance scalability on multiprocessor systems, one buffer is allocated per CPU. The optimal buffer size depends on the amount of events to be logged and is subject to future work 2. 2 Forexample, monitoring the Windowsboot process requires abuffer sizeofapproximately16 MiB, leaving space open for additional event types. 262
3 M"'$&*>' 6QQ-)9(#)*!" N<;DDF;DD 3 NOPF;DD :(--" 3()#H*$IJKL'9# 7$*9'"" :$'(#)*! <=$'(> :$'(#)*! 5'$!'-&*>' M"'$&*>' 3&86--*9(#'+,'!# &8:*&&)#+,'!# 3&8;)"83$)#'$<=$'(>?@A"#'&#=$'(>B 2'.%-($ 0%11'$ +,'!#-*. 0%11'$ 2'"'$,' 0%11'$ C($>>)"8 D*.1)-' E&8F-*. Figure 1: WMK components -overview Events occur potentially in parallel and occur frequently thus requiring arapid event handling mechanism. The allocation of an event log entry must happen under mutual exclusion. OS synchronization objects are insufficient for this purpose as they exhibit blocking semantics, i.e., an event handler might block while another event handler is allocating an event log entry. Thus, we implemented a non-blocking allocation algorithm that uses atomic processor instruction to guarantee mutual exclusion. For example, on i386 architectures, we use a compare-and-swap instruction that can atomicallyexecute a comparison and swap operation. To prevent the buffer from overflowing, wedump the event log to asecondary storage (WmkDiskWriterThread). This happens when the event log buffer exceeds a certain threshold. While flushing the buffer to disk, other events might occur. Inorder to not miss these events we provide a reserve buffer. When flushing has finished, we continue to use the regular buffer again and flush the reservebuffer to disk. To log an event, instrumentation code first calls WmkAllocateEvent specifying the type of event that should be logged. Afterwards a pointer to the WMK buffer is returned providing enough space to hold event data. The instrumentation code can then fill in all event specific data to the buffer and finally commits the event ( WmkCommitEvent) to indicate that an event has successfully been logged. The commitment is crucial to signal the WmkDiskWriterThread that all events in the event log are ready for flushing to disk. 3 Case Studies First, we describe the Wait-for graph which is helpful for identifying the collaboration of threads via their synchronization connections. Second, a Process-thread graph is described 263
4 which can be used to analyzethe process-thread hierarchy. The Thread-prioritydiagram and Scheduling diagram are not presented in this paper. Other types of diagrams might be useful depending on the data classes acquired from our infrastructure and are subject to future work. 3.1 Analyzing Synchronization Behavior A common problem in complex multi-threaded applications is the analysis of their synchronization behavior and the analysis whether apotential deadlock may arise. Given onlya static documentation or the source code of an application, it is difficult to figure out which thread waits for which synchronization object and which other threads wait for the same synchronization object. This behavior should be monitorable at runtime of asystem. Basing on our wait event monitoring, we created a tool that dynamicallyanalyzes and visualizes dependencies concerning synchronization objects acquired bydifferent threads. For convenience, we used a simple consumer-producer-application [Dij68]. Figure 2 demonstrates the resulting wait-for dependencygraph. Inside this graph, a rectangle denotes a thread object. A thread object is specified by its thread identifier,the thread sfunction name (if available 3 )and the thread object saddress. A diamond denotes a waitable object, e.g., semaphores, events, or threads. The diamond shape contains the object type as well as the object address. A directed edge between a thread and awaitable object denotes that the thread waited for the object. Figure 2: Wait-for Graph of asimple producer-consumer example. Not surprisingly, the producer and the consumer thread both wait for a mutant object, a Windows synchronization primitive for assuring mutual exclusion. Also, the main thread (executing the main function of a C program), waits for both child threads to finish their execution. Each thread, consumer and producer, also waits for another semaphore object 3 To resolve function names, additional symbol files may be necessary. 264
5 not related to solving the producer-consumer-problem. The purpose of this semaphore is beyond the scope of this paper; it is needed for implementing Local Procedure Calls (LPC) [RS05]. The Wait-for Graph can be created by connecting the WMK to the specific application that should be observed. The process handle is given to the logging infrastructure via a system service call. Note that this connection can even be established at runtime when the application has already started. 3.2 Analyzing Windows Boot Activity We consider the Windows operating system as an example of a mature complex system that has been undocumented until now. The WMK allows to trace the (operating) system behavior. To monitor the whole system the WMK must be globally enabled. The system service call which connects a specific process handle to the infrastructure is not necessary (and makes no sense). With a globally enabled WMK, even the boot process can be traced. Furthermore, inter-application dependencies can be analyzed. As an example, figure 3 shows a section of the process/thread relation of the windows boot procedure. Processes (ellipses) and threads (yellow boxes) are shown. If possible, the thread function name is extracted from the application debug information (PDB files). Figure 3: Windows boot process -thread/process relation The graph edges illustrate the hierarchy dependency. Inthis way you can analyze which thread or process is started bywhich thread. 265
6 Youcan see that the Windowssystem process (at the top of the graph, with the id 0x ) starts the Phase1Initialization thread which starts all other system threads and initializes the whole system. Analyzing the process-thread creation can be useful to get a high-level overview of the components of a monitored system. Such an analysis can be the starting point of further analysis, e.g. considering synchronization behavior. 4 Related Work Instrumenting applications at operating system level has been well investigated. On Windows operating systems, the major comprehensive analysis tool at operating system level is perfmon [RS05]. Perfmon queries built-in Windows performance counters and generates diagrams that help system administrators to identify bottlenecks in the operating system. Performance counters have to be queried by a Windows API, restricting the frequency of the requests. For example, it is impossible to trace every context switch, because the contextswitch counter might alreadyhavechanged whilethe resultofaqueryis transfered to the monitoring thread. The Linux Trace Toolkit (LTT) [YD00] was created to instrument the Linux operating system at source code level. It also provides an efficient event logging infrastructure but requires a user mode deamon to transfer logged events to the file system. This implies that the buffer containing logged events can be dumped to the file system at alate stage in the boot process which requires a bigger buffer size to guarantee that no events will be lost. Especially on multiprocessor systems this approach does not scale well. A more flexible approach is taken bydtrace [CSL04] which allows dynamic modification of kernel code in order to instrument it. It instruments the kernel by replacing the opcode at a specified instruction address with a jump instruction to an instrumentation routine. The ability to add events at runtime makes the tool much more flexible than WMK. But DTrace has a major drawback: The locations where instrumentation code can be placed is limited by available providers. As long as there is no provider for an arbitrary code location, DTrace is unable to log events at that location. 5 Conclusion and Outlook We presented the WMK infrastructure for logging arbitrary OS kernel events. We implemented a prototype according to our architectural model and monitored several applications. The results of our monitoring can be used for further analysis by our visualization tool. We showed that the Wait-for graph is suitable for analyzing synchronization behavior of multi-threaded applications. The Process-thread graph can be used to get a high-level overviewon the runtime behavior of an application. 266
7 We will investigate to what extent the operating system s execution time is effected by WMK event logging. Also, we will investigate impacts on the OS s behavior caused bythe non-paged memorypool consumptions. We will also focus on more sophisticated analysis scenarios (e.g. detect deadlock occurrence or calculate performance characteristics) and additional instrumentation points (e.g. logging system call parameters or page faults). 6 Acknowledgments We would like to thank Dave Probert for his engagement in disclosing the Windows NT source code. This paper would not have been possible, if the WRK had not been released in References [CSL04] Bryan Cantrill, Michael W. Shapiro, and Adam H. Leventhal. Dynamic Instrumentation of Production Systems. In USENIX Annual Technical Conference, General Track,pages 15 28, [Dij68] [PP06] [RS05] EW Dijkstra. A constructive approach to the problem of program correctness. BIT Numerical Mathematics, 8(3): , Andreas Polze and Dave Probert. Teaching operating systems: the Windows case. In SIGCSE 06: Proceedings of the 37th SIGCSE technical symposium on Computer science education, pages , New York, NY, USA, ACMPress. Mark E. Russinovich and David Solomon. Microsoft Windows Internals. Microsoft Press, 4th edition, [WRKa] Windows Research Kernel. researchkernel.mspx. [WRKb] WRK@HPI. [YD00] Karim Yaghmour and Michel R. Dagenais. Measuring and Characterizing System Behavior Using Kernel-Level Event Logging. In Proceedings of the USENIX Annual Technical Conference, pages 13 26, June
Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6
Kernel comparison of OpenSolaris, Windows Vista and Linux 2.6 The idea of writing this paper is evoked by Max Bruning's view on Solaris, BSD and Linux. The comparison of advantages and disadvantages among
Software Tracing of Embedded Linux Systems using LTTng and Tracealyzer. Dr. Johan Kraft, Percepio AB
Software Tracing of Embedded Linux Systems using LTTng and Tracealyzer Dr. Johan Kraft, Percepio AB Debugging embedded software can be a challenging, time-consuming and unpredictable factor in development
Chapter 6, The Operating System Machine Level
Chapter 6, The Operating System Machine Level 6.1 Virtual Memory 6.2 Virtual I/O Instructions 6.3 Virtual Instructions For Parallel Processing 6.4 Example Operating Systems 6.5 Summary Virtual Memory General
First-class User Level Threads
First-class User Level Threads based on paper: First-Class User Level Threads by Marsh, Scott, LeBlanc, and Markatos research paper, not merely an implementation report User-level Threads Threads managed
Chapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest
Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest 1. Introduction Few years ago, parallel computers could
How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X
(Advanced Topics in) Operating Systems Winter Term 2009 / 2010 Jun.-Prof. Dr.-Ing. André Brinkmann [email protected] Universität Paderborn PC 1 Overview Overview of chapter 3: Case Studies 3.1 Windows Architecture.....3
Web Server Architectures
Web Server Architectures CS 4244: Internet Programming Dr. Eli Tilevich Based on Flash: An Efficient and Portable Web Server, Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel, 1999 Annual Usenix Technical
Chapter 2 System Structures
Chapter 2 System Structures Operating-System Structures Goals: Provide a way to understand an operating systems Services Interface System Components The type of system desired is the basis for choices
Mimer SQL Real-Time Edition White Paper
Mimer SQL Real-Time Edition - White Paper 1(5) Mimer SQL Real-Time Edition White Paper - Dag Nyström, Product Manager Mimer SQL Real-Time Edition Mimer SQL Real-Time Edition is a predictable, scalable
Testing Database Performance with HelperCore on Multi-Core Processors
Project Report on Testing Database Performance with HelperCore on Multi-Core Processors Submitted by Mayuresh P. Kunjir M.E. (CSA) Mahesh R. Bale M.E. (CSA) Under Guidance of Dr. T. Matthew Jacob Problem
CSC 2405: Computer Systems II
CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building [email protected]
Processes and Non-Preemptive Scheduling. Otto J. Anshus
Processes and Non-Preemptive Scheduling Otto J. Anshus 1 Concurrency and Process Challenge: Physical reality is Concurrent Smart to do concurrent software instead of sequential? At least we want to have
Operating Systems. 05. Threads. Paul Krzyzanowski. Rutgers University. Spring 2015
Operating Systems 05. Threads Paul Krzyzanowski Rutgers University Spring 2015 February 9, 2015 2014-2015 Paul Krzyzanowski 1 Thread of execution Single sequence of instructions Pointed to by the program
Chapter 18: Database System Architectures. Centralized Systems
Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and
Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:
Chapter 7 OBJECTIVES Operating Systems Define the purpose and functions of an operating system. Understand the components of an operating system. Understand the concept of virtual memory. Understand the
Intel Application Software Development Tool Suite 2.2 for Intel Atom processor. In-Depth
Application Software Development Tool Suite 2.2 for Atom processor In-Depth Contents Application Software Development Tool Suite 2.2 for Atom processor............................... 3 Features and Benefits...................................
Centralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures
Chapter 18: Database System Architectures Centralized Systems! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types! Run on a single computer system and do
Weighted Total Mark. Weighted Exam Mark
CMP2204 Operating System Technologies Period per Week Contact Hour per Semester Total Mark Exam Mark Continuous Assessment Mark Credit Units LH PH TH CH WTM WEM WCM CU 45 30 00 60 100 40 100 4 Rationale
INTRODUCTION TO COMPUTING CPIT 201 WEEK 13 LECTURE 3
INTRODUCTION TO COMPUTING CPIT 201 WEEK 13 LECTURE 3 OPERATING SYSTEM Process manager A second function of an operating system is process management, but before discussing this concept, we need to define
Operating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
theguard! ApplicationManager System Windows Data Collector
theguard! ApplicationManager System Windows Data Collector Status: 10/9/2008 Introduction... 3 The Performance Features of the ApplicationManager Data Collector for Microsoft Windows Server... 3 Overview
Operating System Tutorial
Operating System Tutorial OPERATING SYSTEM TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Operating System Tutorial An operating system (OS) is a collection
Understand Performance Monitoring
Understand Performance Monitoring Lesson Overview In this lesson, you will learn: Performance monitoring methods Monitor specific system activities Create a Data Collector Set View diagnosis reports Task
Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification
Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by
VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5
Performance Study VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5 VMware VirtualCenter uses a database to store metadata on the state of a VMware Infrastructure environment.
Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization
Lesson Objectives To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization AE3B33OSD Lesson 1 / Page 2 What is an Operating System? A
The Microsoft Windows Hypervisor High Level Architecture
The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its
A Deduplication File System & Course Review
A Deduplication File System & Course Review Kai Li 12/13/12 Topics A Deduplication File System Review 12/13/12 2 Traditional Data Center Storage Hierarchy Clients Network Server SAN Storage Remote mirror
Multi-core Programming System Overview
Multi-core Programming System Overview Based on slides from Intel Software College and Multi-Core Programming increasing performance through software multi-threading by Shameem Akhter and Jason Roberts,
Multi-core architectures. Jernej Barbic 15-213, Spring 2007 May 3, 2007
Multi-core architectures Jernej Barbic 15-213, Spring 2007 May 3, 2007 1 Single-core computer 2 Single-core CPU chip the single core 3 Multi-core architectures This lecture is about a new trend in computer
How To Understand The History Of An Operating System
7 Operating Systems 7.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: 7.2 Understand the role of the operating system.
Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:
Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.
OS Thread Monitoring for DB2 Server
1 OS Thread Monitoring for DB2 Server Minneapolis March 1st, 2011 Mathias Hoffmann ITGAIN GmbH [email protected] 2 Mathias Hoffmann Background Senior DB2 Consultant Product Manager for SPEEDGAIN
Resource Containers: A new facility for resource management in server systems
CS 5204 Operating Systems Resource Containers: A new facility for resource management in server systems G. Banga, P. Druschel, Rice Univ. J. C. Mogul, Compaq OSDI 1999 Outline Background Previous Approaches
POSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)
RTOSes Part I Christopher Kenna September 24, 2010 POSIX Portable Operating System for UnIX Application portability at source-code level POSIX Family formally known as IEEE 1003 Originally 17 separate
Lecture 25 Symbian OS
CS 423 Operating Systems Design Lecture 25 Symbian OS Klara Nahrstedt Fall 2011 Based on slides from Andrew S. Tanenbaum textbook and other web-material (see acknowledgements) cs423 Fall 2011 1 Overview
Operating Systems. Lecture 03. February 11, 2013
Operating Systems Lecture 03 February 11, 2013 Goals for Today Interrupts, traps and signals Hardware Protection System Calls Interrupts, Traps, and Signals The occurrence of an event is usually signaled
Load Balancing on an Interactive Multiplayer Game Server
Load Balancing on an Interactive Multiplayer Game Server Daniel Cordeiro 1,, Alfredo Goldman 1, and Dilma da Silva 2 1 Department of Computer Science, University of São Paulo danielc,[email protected] 2
Perfmon2: A leap forward in Performance Monitoring
Perfmon2: A leap forward in Performance Monitoring Sverre Jarp, Ryszard Jurga, Andrzej Nowak CERN, Geneva, Switzerland [email protected] Abstract. This paper describes the software component, perfmon2,
Process Description and Control. 2004-2008 william stallings, maurizio pizzonia - sistemi operativi
Process Description and Control 1 Process A program in execution (running) on a computer The entity that can be assigned to and executed on a processor A unit of activity characterized by a at least one
Red Hat Linux Internals
Red Hat Linux Internals Learn how the Linux kernel functions and start developing modules. Red Hat Linux internals teaches you all the fundamental requirements necessary to understand and start developing
Performance Counters. Microsoft SQL. Technical Data Sheet. Overview:
Performance Counters Technical Data Sheet Microsoft SQL Overview: Key Features and Benefits: Key Definitions: Performance counters are used by the Operations Management Architecture (OMA) to collect data
Amoeba Distributed Operating System
Amoeba Distributed Operating System Matt Ramsay Tim Kiegel Heath Memmer CS470 Case Study Paper 4/19/02 Amoeba Introduction The Amoeba operating system began as a research project at Vrije Universiteit
Operating System and Process Monitoring Tools
http://www.cse.wustl.edu/~jain/cse567-06/ftp/os_monitors/index.html 1 of 12 Operating System and Process Monitoring Tools Arik Brooks, [email protected] Abstract: Monitoring the performance of operating systems
An Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
Monitoring IBM HMC Server. eg Enterprise v6
Monitoring IBM HMC Server eg Enterprise v6 Restricted Rights Legend The information contained in this document is confidential and subject to change without notice. No part of this document may be reproduced
Monitors, Java, Threads and Processes
Monitors, Java, Threads and Processes 185 An object-oriented view of shared memory A semaphore can be seen as a shared object accessible through two methods: wait and signal. The idea behind the concept
CS0206 OPERATING SYSTEMS Prerequisite CS0201, CS0203
CS0206 OPERATING SYSTEMS Prerequisite CS0201, CS0203 L T P C 3 0 0 3 PURPOSE Every computer professional should have a basic understanding of how an operating system controls the computing resources and
Windows 2003 Performance Monitor. System Monitor. Adding a counter
Windows 2003 Performance Monitor The performance monitor, or system monitor, is a utility used to track a range of processes and give a real time graphical display of the results, on a Windows 2003 system.
End-user Tools for Application Performance Analysis Using Hardware Counters
1 End-user Tools for Application Performance Analysis Using Hardware Counters K. London, J. Dongarra, S. Moore, P. Mucci, K. Seymour, T. Spencer Abstract One purpose of the end-user tools described in
Server Manager Performance Monitor. Server Manager Diagnostics Page. . Information. . Audit Success. . Audit Failure
Server Manager Diagnostics Page 653. Information. Audit Success. Audit Failure The view shows the total number of events in the last hour, 24 hours, 7 days, and the total. Each of these nodes can be expanded
SYSTEM ecos Embedded Configurable Operating System
BELONGS TO THE CYGNUS SOLUTIONS founded about 1989 initiative connected with an idea of free software ( commercial support for the free software ). Recently merged with RedHat. CYGNUS was also the original
Basics of VTune Performance Analyzer. Intel Software College. Objectives. VTune Performance Analyzer. Agenda
Objectives At the completion of this module, you will be able to: Understand the intended purpose and usage models supported by the VTune Performance Analyzer. Identify hotspots by drilling down through
Windows8 Internals, Sixth Edition, Part 1
Microsoft Windows8 Internals, Sixth Edition, Part 1 Mark Russinovich David A. Solomon Alex lonescu Windows Internals, Sixth Edition, Part i Introduction xvii Chapter 1 Concepts and Tools 1 Windows Operating
I/O Device and Drivers
COS 318: Operating Systems I/O Device and Drivers Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Project
Operating System Components and Services
Operating System Components and Services Tom Kelliher, CS 311 Feb. 6, 2012 Announcements: From last time: 1. System architecture issues. 2. I/O programming. 3. Memory hierarchy. 4. Hardware protection.
Using Power to Improve C Programming Education
Using Power to Improve C Programming Education Jonas Skeppstedt Department of Computer Science Lund University Lund, Sweden [email protected] jonasskeppstedt.net jonasskeppstedt.net [email protected]
Introduction. What is an Operating System?
Introduction What is an Operating System? 1 What is an Operating System? 2 Why is an Operating System Needed? 3 How Did They Develop? Historical Approach Affect of Architecture 4 Efficient Utilization
Solving Performance Problems In SQL Server by Michal Tinthofer
Solving Performance Problems In SQL Server by Michal Tinthofer [email protected] GOPAS: info@gopas,sk www.gopas.sk www.facebook.com/gopassr Agenda Analyze the overall Sql Server state Focus on
Real-Time Scheduling 1 / 39
Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A
Data Modeling for Big Data
Data Modeling for Big Data by Jinbao Zhu, Principal Software Engineer, and Allen Wang, Manager, Software Engineering, CA Technologies In the Internet era, the volume of data we deal with has grown to terabytes
Overview of Operating Systems Instructor: Dr. Tongping Liu
Overview of Operating Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. 1 Lecture Outline Operating System: what is it? Evolution of Computer Systems
Real Time Programming: Concepts
Real Time Programming: Concepts Radek Pelánek Plan at first we will study basic concepts related to real time programming then we will have a look at specific programming languages and study how they realize
Web Application s Performance Testing
Web Application s Performance Testing B. Election Reddy (07305054) Guided by N. L. Sarda April 13, 2008 1 Contents 1 Introduction 4 2 Objectives 4 3 Performance Indicators 5 4 Types of Performance Testing
Building Applications Using Micro Focus COBOL
Building Applications Using Micro Focus COBOL Abstract If you look through the Micro Focus COBOL documentation, you will see many different executable file types referenced: int, gnt, exe, dll and others.
The Lagopus SDN Software Switch. 3.1 SDN and OpenFlow. 3. Cloud Computing Technology
3. The Lagopus SDN Software Switch Here we explain the capabilities of the new Lagopus software switch in detail, starting with the basics of SDN and OpenFlow. 3.1 SDN and OpenFlow Those engaged in network-related
System Structures. Services Interface Structure
System Structures Services Interface Structure Operating system services (1) Operating system services (2) Functions that are helpful to the user User interface Command line interpreter Batch interface
This tutorial will take you through step by step approach while learning Operating System concepts.
About the Tutorial 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 a vital component
Operating Systems Concepts: Chapter 7: Scheduling Strategies
Operating Systems Concepts: Chapter 7: Scheduling Strategies Olav Beckmann Huxley 449 http://www.doc.ic.ac.uk/~ob3 Acknowledgements: There are lots. See end of Chapter 1. Home Page for the course: http://www.doc.ic.ac.uk/~ob3/teaching/operatingsystemsconcepts/
An Easier Way for Cross-Platform Data Acquisition Application Development
An Easier Way for Cross-Platform Data Acquisition Application Development For industrial automation and measurement system developers, software technology continues making rapid progress. Software engineers
Automatic Logging of Operating System Effects to Guide Application-Level Architecture Simulation
Automatic Logging of Operating System Effects to Guide Application-Level Architecture Simulation Satish Narayanasamy, Cristiano Pereira, Harish Patil, Robert Cohn, and Brad Calder Computer Science and
An Oracle White Paper September 2013. Advanced Java Diagnostics and Monitoring Without Performance Overhead
An Oracle White Paper September 2013 Advanced Java Diagnostics and Monitoring Without Performance Overhead Introduction... 1 Non-Intrusive Profiling and Diagnostics... 2 JMX Console... 2 Java Flight Recorder...
Networking Operating Systems (CO32010)
Networking Operating Systems (CO32010) 2. Processes and scheduling 1. Operating Systems 1.1 NOS definition and units 1.2 Computer 7. Encryption Systems 1.3 Multitasking and Threading 1.4 Exercises 6. Routers
A Look through the Android Stack
A Look through the Android Stack A Look through the Android Stack Free Electrons Maxime Ripard Free Electrons Embedded Linux Developers c Copyright 2004-2012, Free Electrons. Creative Commons BY-SA 3.0
CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture
CSE 544 Principles of Database Management Systems Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture References Anatomy of a database system. J. Hellerstein and M. Stonebraker. In Red Book (4th
A loadable task execution recorder for Linux
A loadable task execution recorder for Linux Mikael Åsberg, Johan Kraft and Thomas Nolte MRTC/Mälardalen University P.O. Box 883, SE-721 23, Västerås, Sweden {mikael.asberg,johan.kraft,thomas.nolte}@mdh.se
A Brief. Introduction. of MG-SOFT s SNMP Network Management Products. Document Version 1.3, published in June, 2008
A Brief Introduction of MG-SOFT s SNMP Network Management Products Document Version 1.3, published in June, 2008 MG-SOFT s SNMP Products Overview SNMP Management Products MIB Browser Pro. for Windows and
Software design (Cont.)
Package diagrams Architectural styles Software design (Cont.) Design modelling technique: Package Diagrams Package: A module containing any number of classes Packages can be nested arbitrarily E.g.: Java
Performance Monitoring of the Software Frameworks for LHC Experiments
Proceedings of the First EELA-2 Conference R. mayo et al. (Eds.) CIEMAT 2009 2009 The authors. All rights reserved Performance Monitoring of the Software Frameworks for LHC Experiments William A. Romero
Practical Performance Understanding the Performance of Your Application
Neil Masson IBM Java Service Technical Lead 25 th September 2012 Practical Performance Understanding the Performance of Your Application 1 WebSphere User Group: Practical Performance Understand the Performance
Computer Science 4302 Operating Systems. Student Learning Outcomes
Computer Science 4302 Operating Systems Student Learning Outcomes 1. The student will learn what operating systems are, what they do, and how they are designed and constructed. The student will be introduced
Operating System Impact on SMT Architecture
Operating System Impact on SMT Architecture The work published in An Analysis of Operating System Behavior on a Simultaneous Multithreaded Architecture, Josh Redstone et al., in Proceedings of the 9th
Visualizing gem5 via ARM DS-5 Streamline. Dam Sunwoo ([email protected]) ARM R&D December 2012
Visualizing gem5 via ARM DS-5 Streamline Dam Sunwoo ([email protected]) ARM R&D December 2012 1 The Challenge! System-level research and performance analysis becoming ever so complicated! More cores and
opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions
opensm2 Enterprise Performance Monitoring December 2010 Agenda opensm2 Overview INSPECTOR ANALYZER 1 opensm2 Provides a consistent solution for the enterprise-wide performance management Supports the server
COS 318: Operating Systems
COS 318: Operating Systems OS Structures and System Calls Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Outline Protection mechanisms
FRONT FLYLEAF PAGE. This page has been intentionally left blank
FRONT FLYLEAF PAGE This page has been intentionally left blank Abstract The research performed under this publication will combine virtualization technology with current kernel debugging techniques to
Operating Systems and Networks
recap Operating Systems and Networks How OS manages multiple tasks Virtual memory Brief Linux demo Lecture 04: Introduction to OS-part 3 Behzad Bordbar 47 48 Contents Dual mode API to wrap system calls
VMware Server 2.0 Essentials. Virtualization Deployment and Management
VMware Server 2.0 Essentials Virtualization Deployment and Management . This PDF is provided for personal use only. Unauthorized use, reproduction and/or distribution strictly prohibited. All rights reserved.
Principles and characteristics of distributed systems and environments
Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single
PERFORMANCE TUNING IN MICROSOFT SQL SERVER DBMS
Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 4, Issue. 6, June 2015, pg.381
Web Server Software Architectures
Web Server Software Architectures Author: Daniel A. Menascé Presenter: Noshaba Bakht Web Site performance and scalability 1.workload characteristics. 2.security mechanisms. 3. Web cluster architectures.
Performance Monitor for AutoCAD
UNDERSTANDING PERFORMANCE MONITOR FOR AUTOCAD WHITE PAPER OCTOBER 21, 2010 Performance Monitor for AutoCAD The AutoCAD Performance Monitor (Labs release) is a Windows 7 or Vista sidebar gadget that measures
Tasks Schedule Analysis in RTAI/Linux-GPL
Tasks Schedule Analysis in RTAI/Linux-GPL Claudio Aciti and Nelson Acosta INTIA - Depto de Computación y Sistemas - Facultad de Ciencias Exactas Universidad Nacional del Centro de la Provincia de Buenos
Operating Systems Principles
bicfm page i Operating Systems Principles Lubomir F. Bic University of California, Irvine Alan C. Shaw University of Washington, Seattle PEARSON EDUCATION INC. Upper Saddle River, New Jersey 07458 bicfm
Gildart Haase School of Computer Sciences and Engineering
Gildart Haase School of Computer Sciences and Engineering Metropolitan Campus I. Course: CSCI 6638 Operating Systems Semester: Fall 2014 Contact Hours: 3 Credits: 3 Class Hours: W 10:00AM 12:30 PM DH1153
Design Issues in a Bare PC Web Server
Design Issues in a Bare PC Web Server Long He, Ramesh K. Karne, Alexander L. Wijesinha, Sandeep Girumala, and Gholam H. Khaksari Department of Computer & Information Sciences, Towson University, 78 York
