Building Applications Using Micro Focus COBOL

Size: px
Start display at page:

Download "Building Applications Using Micro Focus COBOL"

Transcription

1 Building Applications Using Micro Focus COBOL

2 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. If you have questions about the differences between these formats and why they exist, this paper aims to provide answers. It covers the historical and technical reasons behind the different formats and provides guidance on which to use

3 Contents Introduction... 1 Intermediate Code... 1 What is the COBOL Run-Time System? The Introduction of Generated Code... 4 Packaging Applications... 5 Effective Use of Memory... 5 Support for OS/2 and the Introduction of Linked Applications... 5 The Use of Operating System Application Programming Interfaces Which Executable Format Should I Use?... 8 Portability versus Performance... 8 Which Type of Generated Code Should I Use?... 9 Mixing Formats... 9 Which COBOL Run-Time System Should I Use? Shared versus Static Linked Run-Time Systems Single versus Multi-Threaded Run-Time System Conclusion

4 Introduction If you have been developing Windows or UNIX applications using Micro Focus COBOL, you will have encountered the many different file types used for different executable file formats. These include.int,.gnt,.exe,.dll,.lbr and others. However, unless you have been using Micro Focus COBOL for a long time, you may wonder what these different formats are and when best to use the different types. This paper examines the technical and historical reasons for each of these formats, and also takes a look at the different COBOL Run-Time Systems. Hopefully, by the end of this paper, you will have a better understanding of the different executable formats and Run-Time Systems and be able to determine the best choice for use in your application. Note that many of the reasons for the different executable formats are as much historical as they are technical, so this paper may read like a history lesson as much as a technical paper. Intermediate Code Micro Focus COBOL first appeared on 8-bit microprocessors with the release of Micro Focus CIS COBOL more than 20 years ago. There were two primary goals that influenced the choice of executable format: The size of the executable. The maximum amount of memory that could be installed on an 8-bit machine was 64K. At that time, 32K was considered a large amount of memory. So, the executable files had to be very compact to make the best use of the limited amount of available memory. Portability. It was intended that Micro Focus COBOL should be available on many different processors and operating systems. Therefore, it was desirable to have an executable format that would only require source code to be compiled once, but the resulting executable files would run on all of the platforms supported by Micro Focus COBOL. Intermediate (int) code was introduced to meet the challenge of these two goals. Intermediate code can be considered to be a high-level machine code for a microprocessor that is ideally suited for executing COBOL. In other words, it is an abstract machine code. To run intermediate code, an interpreter is needed. This is built into the COBOL Run-Time System. One way of looking at intermediate code is as a series of subroutine calls. The interpreter contains subroutines that handle each int code instruction. As each instruction is read from the int code file, a call is made to the particular routine in the interpreter that handles that instruction. Once the instruction has been executed, the interpreter goes back to the int code to get the next instruction. Because the abstract machine was designed to be tuned specifically for COBOL applications, the instructions are very compact. For example, one small instruction can add together two COBOL variables, regardless of the different type of COBOL data types used (for example, binary, packed decimal, display). Native machine code to perform such an action would be considerably larger. 1

5 Once a program has been compiled to intermediate code, all that is needed to execute it is a COBOL run-time system. Therefore, once the Run-Time System has been ported to a new platform, the application is able to run on that platform without having to be recompiled. This was exceedingly useful in the early days of Micro Focus since all of the Micro Focus tools, including the compiler, and Animator, were written in COBOL. Because they were compiled to int code just like any other application, it meant that they could be easily ported to a new platform. Even today, the compiler and large portions of the COBOL system are still written in COBOL. What is the COBOL Run-Time System? In order to execute a program developed using Micro Focus COBOL, you need a run-time system. The Run-Time System can be a separate executable or linked in to the application (as we will see later). Figure 1 shows the main components of the COBOL Run-Time System. Program Loader Int Code Interpreter Control Routines Program Callable Routines Operating System Support Package Figure 1 The COBOL Run-Time System 2

6 The five main parts of the Run-Time System are: The Program Loader. This loads COBOL programs into memory as needed. The Int Code Interpreter. This takes control if an intermediate code program is loaded. It interprets each intermediate code instruction and performs the actions required. The Control Routines. These are used by both the Int Code Interpreter and generated code (see the next section) to perform operations such as basic file handling, input from the keyboard and output to the screen, memory management and complex string/numeric-edited field handling. The Program Callable Routines. These are the call-by-number and call-by-name routines that are available to your program. They provide additional functionality not available in the COBOL language. The Operating System Support Package. This provides the interface to the underlying operating system. When the COBOL Run-Time System is ported to a new platform, it is usually only the Operating System Support Package that needs to be changed. In addition to the core Run-Time System, there are additional modules that are required to provide more complex functionality. These include: The Accept/Display Module (ADIS). This provides all of the functionality to handle enhanced and full screen accept and display statements. The File Handler (EXTFH). This provides all of the support for handling indexed sequential files. Other modules that handle external data, communications, etc. These modules are loaded by the Run-Time System as needed by an application. 3

7 The Introduction of Generated Code Because intermediate code is interpreted, the performance of applications that are executing a lot of computing intensive operations can be relatively slow. Therefore, as 16-bit processors were introduced and more memory was available (up to 640K), Micro Focus produced Level II COBOL which introduced the concept of generated native code (gnt). Generated code (gnt) files contain native machine code specific to the processor you are using, rather than intermediate code. In addition, the compilers perform optimization on the generated code in order to execute the code as fast as possible on the target processor. This means that the performance of the application is significantly faster for computational-bound applications since the Run-Time System does not need to interpret instructions when the application is executed. All of the conversion to native code is done when the application is compiled. Note that even today, the compilation process is a two-stage process. 1. The first stage takes the COBOL source code and produces an intermediate code file (int). 2. The second stage takes the int code file and generates the corresponding native code. The names given to the tools that produce these different files has changed over the years. Today, the first stage is called the Checker and the second stage is called the Compiler. If you have been using Micro Focus COBOL for many years, you may be familiar with the term Generator to refer to the second stage of the compiler, hence the term Generated Code. To be consistent with the terminology used today, we will use the term Compiler for the rest of this paper. Even though gnt code files contain native code, they still require a COBOL Run-Time System to load and execute them. Although the Interpreter is not needed for gnt code, as seen in the previous section, the COBOL Run-Time System provides the infrastructure needed for execution of the program. 4

8 Packaging Applications While breaking applications in to multiple modules provides for efficient memory management, as well as enabling teams of programmers to work on the same application effectively, it often results in a single application consisting of large numbers of int and gnt files. This makes managing the distribution of applications more difficult than applications linked into one executable. To overcome this problem, Micro Focus introduced the concept of Library (lbr) files. A tool called the Library Manager was provided that enabled programmers to package multiple gnt and int files into a single lbr file. This meant that instead of distributing multiple int and gnt files, the programmer only had to ship a single lbr file (or more if they wanted) and the COBOL Run-Time System. Effective Use of Memory Even though the 16-bit systems supported more memory, customers were trying to move larger and more complex COBOL applications down to the PC. To handle these systems, Micro Focus COBOL supported the idea of memory overcommit. If a program was larger than would normally be possible in the amount of memory available, the programmer could split it into sub-programs that the COBOL Run-Time System could load into memory as needed. If the program needed to load a module and there was insufficient memory, the COBOL Run-Time System would swap modules that had not been used for a while from memory to disk in order to make room for the new module. In this way, Micro Focus COBOL could handle applications that were larger than the available amount of memory. Similarly, if a program used the COBOL segmentation feature, the COBOL Run-Time System would dynamically load the different segments in to memory as required. Today, this type of memory management is handled by the operating system, but in the days before Windows and OS/2, MS-DOS did not provide anything like this, so the Micro Focus COBOL Run-Time System memory management was very advanced compared with other languages on the market. Support for OS/2 and the Introduction of Linked Applications When IBM OS/2 was introduced in the late 1980s, it was the first PC-based operating system that provided good memory management facilities. Micro Focus was one of the first companies to introduce support for OS/2 with the release of COBOL/2 (COBOL/2 also ran on MS/PC-DOS). With COBOL/2, Micro Focus introduced its users to the concept of compiling programs to object (obj) code and then linking them using a Linker utility with the required Run-Time System modules to provide standalone executable (exe) files. While programmers using other languages had done this for some time, until OS/2 (and later, Windows 3.0) came along, the operating system did not provide the memory management capabilities needed for large applications, meaning that linked applications could only use the amount of memory available on the machine. With the introduction of OS/2, the operating system finally provided the necessary level of memory management and therefore Micro Focus was able to support linking of applications. 5

9 OS/2 also introduced the concept of dynamic link libraries (dlls). A dynamic link library is a linked executable file that can be dynamically loaded by a program as needed. Prior to the introduction of dlls, if you were linking applications, all of the code required for a program had to be linked into one executable file. Dlls finally provided to programmers in other languages the benefits that Micro Focus COBOL users had enjoyed for many years with int and gnt code. So, why was the introduction of linked executables important for COBOL users? The use of int and gnt code worked great if you only developed in COBOL and the COBOL Run- Time System s routines provided all of the additional support you needed. However, if you wanted to develop in multiple programming languages or you wanted to call operating systems routines that were not accessible using COBOL Run-Time System routines, compiling to int and gnt code was not as convenient as will be seen in the following section. The Use of Operating System Application Programming Interfaces Prior to Windows and OS/2, the mainstream operating system for the PC was MS-DOS (PC-DOS on IBM Personal Computers). The only interface provided by MS-DOS to access operating system functions was a low-level machine code interface. In addition, the operating system only provided a basic set of functionality, such as file management, memory management and basic input from the keyboard and output to the screen that provided functionality not much better than old teletypes. To provide better screen and keyboard access, programs had to bypass MS-DOS and access the computer s video memory and Basic Input/Output System (BIOS) functions directly. Again, this required the programmer to write low-level machine code. To remove the need for this, the different compiler vendors provided run time routines, callable from the high-level programming language that provided access to the low-level features of the operating system and computer. Micro Focus was no exception and provided an extensive set of COBOL run time routines to read from and write to video memory, read the keyboard directly, provide access to the file system and so on. Windows and OS/2 introduced PC programmers to the concept of Application Programming Interface (API) functions. These are functions provided by the operating system to enable a program written in a high-level language to directly access the features of the operating system. In addition, the operating system now provided a wider range of functionality, including the capability to write programs with graphical user interfaces. Unfortunately, the APIs provided by the operating system were not directly callable from COBOL since they required language features such as pointers to data and procedures, different calling conventions, passing parameters by value and so on. These features are common in languages such as C, but were not provided in standard COBOL. However, the number of functions provided by the operating system made it impractical for Micro Focus to provide access to all of this functionality via COBOL Run-Time System routines. To provide access to the rich set of API functions to COBOL programmers, Micro Focus added features to the COBOL language in the late 1980s that enabled a COBOL program to directly call API functions. 6

10 However, although the language had been extended, the use of int and gnt code still posed a problem when accessing API functions. All of the API functions are provided in dynamic link libraries. In order to access the API function, you needed to link your application with an import library for the dynamic link library that contained that API function. An import library contains code that locates each function at run time and makes it accessible to your application. Because int and gnt code modules are not linked, there was no means for the program to locate the required API function. Although Micro Focus provided alternative mechanisms for accessing the API functions from int and gnt code, the most effective way to access them was to compile your program to an obj file and link it with the COBOL Run-Time System and the relevant import libraries. You will also find linked executables easier to use if you are developing applications using different programming languages. 7

11 Which Executable Format Should I Use? Given all of the different executable formats that you can create using Micro Focus COBOL, it can sometimes be difficult to decide which one to use. This section provides some guidelines but, obviously, the choice will ultimately depend on your individual requirements. Portability versus Performance For a particular level of COBOL, Micro Focus COBOL source code is portable across all platforms supported by that level of COBOL (assuming, of course, that you do not make calls to API functions specific to a particular operating system). The source code must be compiled on each platform, using the Micro Focus COBOL compiler for that platform. However, the intermediate code is also portable across platforms for the same level of Micro Focus COBOL. This means that as long as you have a COBOL Run-Time System for each of the systems on which you wish to execute your application, you can compile your program on one system and simply deploy the int code to each of the target platforms. So, for instance, you could develop your application on Windows and then execute the int code modules you have created on Sun Solaris, HP/UX, Linux and many other UNIX platforms. If this notion of portability of code seems familiar, it may be because Java has gained so much attention because of its support for write once, run anywhere. This concept is not new Micro Focus has been enabling programmers to do this with COBOL applications for over 20 years! The power of this becomes apparent if you use Micro Focus Net Express and Micro Focus Object COBOL Developer Suite or Micro Focus Server Express together to develop applications. You can develop your applications on Windows using the powerful graphical tools provided with Net Express and then easily publish your applications to your chosen UNIX platform with the click of a button. The application will then be run on UNIX using the appropriate UNIX Run-Time System. Note that later versions of Micro Focus COBOL are backwards compatible with int code created using earlier versions of Micro Focus products. So, for example, int code created using Micro Focus Object COBOL on UNIX can be executed using Net Express on Windows NT or Server Express on UNIX. The reverse situation is not necessarily true. Because later products have extended the abstract machine to support new technologies, you may need to use compiler directives to notify the checker that it should produce int code that can be executed on older products. The downside of using int code is performance. Because it is interpreted, the performance will not be as good as running generated code. The level of performance difference varies, depending on the functionality of your application. If you application is very I/O bound, in other words, it spends a lot of time reading/writing files or waiting for user input, then the performance difference between intermediate and generated code is unlikely to have much impact on the performance of your application. However, if your application performs a lot of calculations and other compute-intensive operations, then the difference between the performance of intermediate code and generated code can be very significant, as much as 2 orders of magnitude. 8

12 If your application is going to be deployed on multiple platforms and does not use operating-system specific features, then the use of intermediate code is worth considering. Only you can determine if the performance of intermediate code is good enough for your needs. There was one other reason for choosing intermediate code in the past. Until recently, the Micro Focus Animator debugger could only be used to debug int code. It could not be used on generated code. For this reason, some customers felt more comfortable shipping the code they could debug. However, with the release of Net Express on Windows and Server Express on UNIX, these products can now debug native code as well as int code. It is interesting to note that Micro Focus Animator was one of the first Visual debugging tools for any programming language that enabled programmers to see their code as it was being executed and provided the ability to change the contents of variables and reset execution to any point in the application. COBOL programmers were able to do tasks with Animator that programmers in other languages wouldn t be able to do for many more years. Which Type of Generated Code Should I Use? If you are only going to ship your application on one platform or if performance is critical to you, then you should consider generated code. Next the decision is whether to create gnt modules or linked executables. As previously mentioned, on 16-bit platforms there were good reasons to use gnt code for better memory management. If you have been using Micro Focus COBOL for many years and are already creating gnt code then, by all means continue to use it. This is especially true if you do not need to access operating system APIs or functions written in other languages. If you are just moving to Micro Focus COBOL or have an application that makes extensive use of operating system APIs or functions in other languages, then you should consider linking your application into an exe file and linking sub-programs into dynamic link libraries. Mixing Formats It is important to note that you do not need to necessarily choose just one format. If you choose the shared Run-Time System or the full static-linked Run-Time System (see the next section), you can make calls to gnt or int code modules from a linked executable. 9

13 Which COBOL Run-Time System Should I Use? Once you have decided on an executable format, the next decision is which COBOL Run- Time System you should use. There are two main types: single-threaded and multithreaded. In addition, if you decide to link your application to form executables and dynamic link libraries, you must choose between the static-linked or shared Run-Time Systems. This section examines these choices. Shared versus Static Linked Run-Time Systems In most cases, if you are linking your application, you will want to choose the shared Run-Time System. In this case, all you are linking into your application is a small piece of code that loads the main Run-Time System into memory and provides access into it for all of the various Run-Time System routines used by the program. The actual Run-Time System is provided as one or more dynamic link libraries that can either be shipped with your application or provided as a separate installable package (this is called the Micro Focus Application Server). If you static-link your application, all of the Run-Time System functionality needed for your application is linked into your application exe or dll file. You can choose the level of run time functionality to be linked into your application from the following options: Lite. This provides a sufficient level of functionality needed for most applications consisting of obj files linked into an executable file. It does not provide support for: calling int or gnt code modules or the packaging of files into lbr files; shared memory allocation; run time configuration using COBCONFIG or DD_ filename mapping 1. Base. This is the default option. It provides all of the functionality needed for linked COBOL applications except for the capability to call int or gnt code modules. Full. This provides all Run-Time System support, including the ability to call int or gnt code modules. 1 For more information on these features, refer to the Net Express documentation. 1 0

14 So which Run-Time System should you choose? For most applications, you should choose the shared Run-Time System. This provides the following benefits: Multiple COBOL applications on the same machine can use the same Run-Time System. The overall size of the executables is reduced since the run time support needed for each executable does not need to be linked into each one. Updates and bug-fixes to Run-Time System modules can easily be applied without needed to re-link your applications. The static-linked Run-Time System would be chosen if you have developed a small standalone application that you want to supply as just one executable. 1 1

15 Single versus Multi-Threaded Run-Time System For most COBOL applications, the single threaded Run-Time System will be the one you will choose (this is the default). The multi-threaded Run-Time System was introduced in Visual Object COBOL, released in Visual Object COBOL introduced much of the core technology that later became Net Express. Micro Focus was the first COBOL vendor to introduce the concept of multi-threading to COBOL programmers. The multi-threaded Run-Time System will normally only be used in one of the following cases: You specifically develop a multi-threaded application using Micro Focus COBOL extensions to support multi-threading. You are developing a mixed Java/COBOL application where Java may call COBOL or COBOL may call Java. 2 You are developing COM components in COBOL that are required to be thread-safe. 3 2 See previous white paper, From COBOL to Enterprise Java Beans with Net Express for more information. 3 See previous white paper, Developing Mixed Visual Basic/COBOL Applications for more information. 1 2

16 Conclusion As computer technology has evolved, Micro Focus COBOL has evolved along with it. Starting with 8-bit systems, then 16 and 32-bit systems, and now the availability of 64-bit systems, Micro Focus has continued to be available on the new platform, enabling its customers to keep up with the changing face of technology. About the author: Wayne Rippin is a self-employed consultant. Previously, he worked for Micro Focus for 16 years, first as a systems programmer and later as a product manager. His most recent role there was director of product management, leading a team of product managers responsible for Net Express, Mainframe Express and Unix compiler products. 1 3

17 Micro Focus Choosing the right partner is as critical as choosing the right technology. As you move forward to meet these demands and the demands of your customers, Micro Focus continues to move forward with you as your strategic ally for legacy change. Unlike other e-business vendors, our approach starts with your enterprise legacy system and is designed to leverage, integrate and build upon your legacy assets. We have no computers or applications to sell. Our focus is to build the best tools to make your legacy system better. For more information on this approach or any of the supporting Micro Focus technologies, please contact your Micro Focus representative, or use the contact information listed Micro Focus. All Rights Reserved. Micro Focus, Animator and Net Express are registered trademarks, and Object COBOL and Server Express are trademarks of Micro Focus. Other trademarks are the property of their respective owners. 1 4

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson CS 3530 Operating Systems L02 OS Intro Part 1 Dr. Ken Hoganson Chapter 1 Basic Concepts of Operating Systems Computer Systems A computer system consists of two basic types of components: Hardware components,

More information

Software: Systems and Application Software

Software: Systems and Application Software Software: Systems and Application Software Computer Software Operating System Popular Operating Systems Language Translators Utility Programs Applications Programs Types of Application Software Personal

More information

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design

More information

An Easier Way for Cross-Platform Data Acquisition Application Development

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

More information

How to use PDFlib products with PHP

How to use PDFlib products with PHP How to use PDFlib products with PHP Last change: July 13, 2011 Latest PDFlib version covered in this document: 8.0.3 Latest version of this document available at: www.pdflib.com/developer/technical-documentation

More information

System Structures. Services Interface Structure

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

More information

Chapter 5: System Software: Operating Systems and Utility Programs

Chapter 5: System Software: Operating Systems and Utility Programs Understanding Computers Today and Tomorrow 12 th Edition Chapter 5: System Software: Operating Systems and Utility Programs Learning Objectives Understand the difference between system software and application

More information

GCCSI. Ihr Dienstleister in:

GCCSI. Ihr Dienstleister in: GCCSI Ihr Dienstleister in: Gürbüz Computer Consulting & Service International 1984-2007 l Önder Gürbüz l Aar Strasse 70 l 65232 Taunusstein info@gccsi.com l +49 (6128) 757583 l +49 (6128) 757584 l +49

More information

Operating System Overview. Otto J. Anshus

Operating System Overview. Otto J. Anshus Operating System Overview Otto J. Anshus A Typical Computer CPU... CPU Memory Chipset I/O bus ROM Keyboard Network A Typical Computer System CPU. CPU Memory Application(s) Operating System ROM OS Apps

More information

Migrate AS 400 Applications to Windows, UNIX or Linux

Migrate AS 400 Applications to Windows, UNIX or Linux Migrate AS 400 Applications to Windows, UNIX or Linux INFINITE Corporation White Paper prepared for Infinite Product Group date January 2012 Abstract: This paper is a discussion of how to create platform

More information

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

More information

Chapter 2 System Structures

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

More information

Data Sheet VISUAL COBOL 2.2.1 WHAT S NEW? COBOL JVM. Java Application Servers. Web Tools Platform PERFORMANCE. Web Services and JSP Tutorials

Data Sheet VISUAL COBOL 2.2.1 WHAT S NEW? COBOL JVM. Java Application Servers. Web Tools Platform PERFORMANCE. Web Services and JSP Tutorials Visual COBOL is the industry leading solution for COBOL application development and deployment on Windows, Unix and Linux systems. It combines best in class development tooling within Eclipse and Visual

More information

Components of a Computing System. What is an Operating System? Resources. Abstract Resources. Goals of an OS. System Software

Components of a Computing System. What is an Operating System? Resources. Abstract Resources. Goals of an OS. System Software What is an Operating System? An operating system (OS) is a collection of software that acts as an intermediary between users and the computer hardware One can view an OS as a manager of system resources

More information

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont. Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures

More information

Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation.

Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation. NETWORK OPERATING SYSTEM Introduction Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation. Network operating

More information

Chapter 3 Operating-System Structures

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

More information

Fall 2009. Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

Fall 2009. Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu. Fall 2009 Lecture 1 Operating Systems: Configuration & Use CIS345 Introduction to Operating Systems Mostafa Z. Ali mzali@just.edu.jo 1-1 Chapter 1 Introduction to Operating Systems An Overview of Microcomputers

More information

AS/400 System Overview

AS/400 System Overview Chapter 1 AS/400 System Overview 1.1 Major Characteristics of AS/400 1.1.1 High Level of Integration 1.1.2 Object Orientation 1.1.3 Relational and Integrated Database 1.1.4 Data and Program Independence

More information

A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies. Bridging BIOS to UEFI

A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies. Bridging BIOS to UEFI A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies Bridging BIOS to UEFI Copyright Copyright 2007 by Phoenix Technologies Ltd. All rights reserved. No part of this publication

More information

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines Operating System Concepts 3.1 Common System Components

More information

How Java Software Solutions Outperform Hardware Accelerators

How Java Software Solutions Outperform Hardware Accelerators How Java Software Solutions Outperform Hardware Accelerators MIPS Technologies, Inc. April 2005 Java is a programming language which has one big advantage and one big disadvantage: the big advantage is

More information

Lesson 06: Basics of Software Development (W02D2

Lesson 06: Basics of Software Development (W02D2 Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash

More information

Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server

Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server Hardware Windows Windows NT 4.0 Linux Server Software and

More information

Introduction to Virtual Machines

Introduction to Virtual Machines Introduction to Virtual Machines Introduction Abstraction and interfaces Virtualization Computer system architecture Process virtual machines System virtual machines 1 Abstraction Mechanism to manage complexity

More information

Chapter 6, The Operating System Machine Level

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

More information

Migrate AS 400 Applications to Linux

Migrate AS 400 Applications to Linux Migrate AS 400 Applications to Linux Infinite Corporation White Paper date March 2011 Abstract: This paper is a discussion of how to create platform independence by executing i OS (AS/400) applications

More information

Why Threads Are A Bad Idea (for most purposes)

Why Threads Are A Bad Idea (for most purposes) Why Threads Are A Bad Idea (for most purposes) John Ousterhout Sun Microsystems Laboratories john.ousterhout@eng.sun.com http://www.sunlabs.com/~ouster Introduction Threads: Grew up in OS world (processes).

More information

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design Java in Education Introduction Choosing appropriate tool for creating multimedia is the first step in multimedia design and production. Various tools that are used by educators, designers and programmers

More information

Example of Standard API

Example of Standard API 16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

More information

Rapid application development for JEE using Adobe ColdFusion 9

Rapid application development for JEE using Adobe ColdFusion 9 Rapid application development for JEE using Adobe ColdFusion 9 Table of contents 1 Six issues affecting web application development 2 The ColdFusion approach for rapid application development 3 The business

More information

Intel Application Software Development Tool Suite 2.2 for Intel Atom processor. In-Depth

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...................................

More information

Enterprise Mobile Application Development: Native or Hybrid?

Enterprise Mobile Application Development: Native or Hybrid? Enterprise Mobile Application Development: Native or Hybrid? Enterprise Mobile Application Development: Native or Hybrid? SevenTablets 855-285-2322 Contact@SevenTablets.com http://www.seventablets.com

More information

INTEL PARALLEL STUDIO XE EVALUATION GUIDE

INTEL PARALLEL STUDIO XE EVALUATION GUIDE Introduction This guide will illustrate how you use Intel Parallel Studio XE to find the hotspots (areas that are taking a lot of time) in your application and then recompiling those parts to improve overall

More information

4.1 Introduction 4.2 Explain the purpose of an operating system 4.2.1 Describe characteristics of modern operating systems Control Hardware Access

4.1 Introduction 4.2 Explain the purpose of an operating system 4.2.1 Describe characteristics of modern operating systems Control Hardware Access 4.1 Introduction The operating system (OS) controls almost all functions on a computer. In this lecture, you will learn about the components, functions, and terminology related to the Windows 2000, Windows

More information

3 SOFTWARE AND PROGRAMMING LANGUAGES

3 SOFTWARE AND PROGRAMMING LANGUAGES 3 SOFTWARE AND PROGRAMMING LANGUAGES 3.1 INTRODUCTION In the previous lesson we discussed about the different parts and configurations of computer. It has been mentioned that programs or instructions have

More information

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: 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.

More information

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service Achieving Scalability and High Availability Abstract DB2 Connect Enterprise Edition for Windows NT provides fast and robust connectivity

More information

Software: Systems and. Application Software. Software and Hardware. Types of Software. Software can represent 75% or more of the total cost of an IS.

Software: Systems and. Application Software. Software and Hardware. Types of Software. Software can represent 75% or more of the total cost of an IS. C H A P T E R 4 Software: Systems and Application Software Software and Hardware Software can represent 75% or more of the total cost of an IS. Less costly hdwr. More complex sftwr. Expensive developers

More information

Section 1.4. Java s Magic: Bytecode, Java Virtual Machine, JIT,

Section 1.4. Java s Magic: Bytecode, Java Virtual Machine, JIT, J A V A T U T O R I A L S : Section 1.4. Java s Magic: Bytecode, Java Virtual Machine, JIT, JRE and JDK This section clearly explains the Java s revolutionary features in the programming world. Java basic

More information

CPS221 Lecture: Operating System Structure; Virtual Machines

CPS221 Lecture: Operating System Structure; Virtual Machines Objectives CPS221 Lecture: Operating System Structure; Virtual Machines 1. To discuss various ways of structuring the operating system proper 2. To discuss virtual machines Materials: 1. Projectable of

More information

evm Virtualization Platform for Windows

evm Virtualization Platform for Windows B A C K G R O U N D E R evm Virtualization Platform for Windows Host your Embedded OS and Windows on a Single Hardware Platform using Intel Virtualization Technology April, 2008 TenAsys Corporation 1400

More information

Embedded Software Development

Embedded Software Development Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) TDDI11, Embedded Software 2010-04-22 Embedded Software Development Host and Target Machine Typical embedded

More information

How To Migrate To Redhat Enterprise Linux 4

How To Migrate To Redhat Enterprise Linux 4 Migrating to Red Hat Enterprise Linux 4: Upgrading to the latest Red Hat release By Donald Fischer Abstract Red Hat Enterprise Linux subscribers may choose to deploy any of the supported versions of the

More information

Understanding the IEC61131-3 Programming Languages

Understanding the IEC61131-3 Programming Languages profile Drive & Control Technical Article Understanding the IEC61131-3 Programming Languages It was about 120 years ago when Mark Twain used the phrase more than one way to skin a cat. In the world of

More information

End-user Tools for Application Performance Analysis Using Hardware Counters

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

More information

Issues in Smart Card Development

Issues in Smart Card Development Middleware Issues in Smart Card Development Simplifying Smart Card Access under Windows a White Paper Abstract In todays business environment there is an increased awarness of security, which is driving

More information

UEFI on Dell BizClient Platforms

UEFI on Dell BizClient Platforms UEFI on Dell BizClient Platforms Authors: Anand Joshi Kurt Gillespie This document is for informational purposes only and may contain typographical errors and technical inaccuracies. The content is provided

More information

Windows Server Performance Monitoring

Windows Server Performance Monitoring Spot server problems before they are noticed The system s really slow today! How often have you heard that? Finding the solution isn t so easy. The obvious questions to ask are why is it running slowly

More information

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,

More information

2 SQL in iseries Navigator

2 SQL in iseries Navigator 2 SQL in iseries Navigator In V4R4, IBM added an SQL scripting tool to the standard features included within iseries Navigator and has continued enhancing it in subsequent releases. Because standard features

More information

Expedite for Windows Software Development Kit Programming Guide

Expedite for Windows Software Development Kit Programming Guide GXS EDI Services Expedite for Windows Software Development Kit Programming Guide Version 6 Release 2 GC34-3285-02 Fifth Edition (November 2005) This edition replaces the Version 6.1 edition. Copyright

More information

Linear Motion and Assembly Technologies Pneumatics Service. Understanding the IEC61131-3 Programming Languages

Linear Motion and Assembly Technologies Pneumatics Service. Understanding the IEC61131-3 Programming Languages Electric Drives and Controls Hydraulics Linear Motion and Assembly Technologies Pneumatics Service profile Drive & Control Understanding the IEC61131-3 Programming Languages It was about 120 years ago

More information

Chapter 12 Programming Concepts and Languages

Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Paradigm Publishing, Inc. 12-1 Presentation Overview Programming Concepts Problem-Solving Techniques The Evolution

More information

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition 10 STEPS TO YOUR FIRST QNX PROGRAM QUICKSTART GUIDE Second Edition QNX QUICKSTART GUIDE A guide to help you install and configure the QNX Momentics tools and the QNX Neutrino operating system, so you can

More information

VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED.

VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED. VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED. Starting Vmware Workstation Go to the start menu and start the VMware Workstation program. *If you are using

More information

Compaq Batch Scheduler for Windows NT

Compaq Batch Scheduler for Windows NT Compaq Batch Scheduler for Windows NT Mainframe-Caliber Automated Job Scheduling Software for Windows NT This white paper addresses extending the capabilities of Windows NT to include automated job scheduling

More information

BarTender Integration Methods. Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER

BarTender Integration Methods. Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER BarTender Integration Methods Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER Contents Introduction 3 Integrating with External Data 4 Importing Data

More information

Using VMware Player. VMware Player. What Is VMware Player?

Using VMware Player. VMware Player. What Is VMware Player? VMWARE APPLICATION NOTE VMware Player Using VMware Player This document contains the following sections: Work and Play in a Virtual World on page 1 Options and Features in VMware Player on page 4 Installing

More information

Four Keys to Successful Multicore Optimization for Machine Vision. White Paper

Four Keys to Successful Multicore Optimization for Machine Vision. White Paper Four Keys to Successful Multicore Optimization for Machine Vision White Paper Optimizing a machine vision application for multicore PCs can be a complex process with unpredictable results. Developers need

More information

Chapter 3: Operating-System Structures. Common System Components

Chapter 3: Operating-System Structures. Common System Components Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

More information

1 Documentation Accessibility

1 Documentation Accessibility Oracle Database Client Quick Installation Guide 10g Release 1 (10.1.0.2.0) for Windows Part No. B13691-01 March 2004 This guide describes how to quickly install Oracle Database Client on Windows systems.

More information

Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software

Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software 1 1. Linker 2 Linker Links the compiled codes of application software, object codes from library and OS kernel functions.

More information

The Fastest Way to Parallel Programming for Multicore, Clusters, Supercomputers and the Cloud.

The Fastest Way to Parallel Programming for Multicore, Clusters, Supercomputers and the Cloud. White Paper 021313-3 Page 1 : A Software Framework for Parallel Programming* The Fastest Way to Parallel Programming for Multicore, Clusters, Supercomputers and the Cloud. ABSTRACT Programming for Multicore,

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove (amislove@ccs.neu.edu) Operating System Services Operating systems provide an environment for

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

1. Overview of the Java Language

1. Overview of the Java Language 1. Overview of the Java Language What Is the Java Technology? Java technology is: A programming language A development environment An application environment A deployment environment It is similar in syntax

More information

Outline: Operating Systems

Outline: Operating Systems Outline: Operating Systems What is an OS OS Functions Multitasking Virtual Memory File Systems Window systems PC Operating System Wars: Windows vs. Linux 1 Operating System provides a way to boot (start)

More information

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia. www.hardis.

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia. www.hardis. Web Studio Visual Studio iseries Studio The universal development platform applied to corporate strategy Adelia www.hardis.com The choice of a CASE tool does not only depend on the quality of the offer

More information

How to Configure Informix Connect and ODBC

How to Configure Informix Connect and ODBC Informix User Forum 2005 Moving Forward With Informix How to Configure Informix Connect and ODBC James Edmiston Informix DBA Consultant Quest Information Systems, Inc. Atlanta, Georgia December 8-9, 2005

More information

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming

More information

Reduces development time by 90%

Reduces development time by 90% Symphonia. Symphonia Messaging Toolkit A developer s productivity tool that Reduces development time by 90% Message Definition Huge Message Libraries Message Testing - Explorer Symphonia Engine (processes

More information

Best Practices: Implementing Large Scale Collections with F- Response

Best Practices: Implementing Large Scale Collections with F- Response Best Practices: Implementing Large Scale Collections with F- Response Note: This guide assumes you have familiarity with F-Response Enterprise or Consultant Edition. For more information, please reference

More information

REALbasic versus Visual Basic

REALbasic versus Visual Basic REALbasic versus Visual Basic By Jerry Lee Ford, Jr. November 2006 When is comes to the development of Windows applications, REALbasic s main competitor it Microsoft s Visual Basic programming language.

More information

OPERATING SYSTEM SERVICES

OPERATING SYSTEM SERVICES OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered

More information

Application Development Guide: Building and Running Applications

Application Development Guide: Building and Running Applications IBM DB2 Universal Database Application Development Guide: Building and Running Applications Version 8 SC09-4825-00 IBM DB2 Universal Database Application Development Guide: Building and Running Applications

More information

Operating System Structures

Operating System Structures COP 4610: Introduction to Operating Systems (Spring 2015) Operating System Structures Zhi Wang Florida State University Content Operating system services User interface System calls System programs Operating

More information

Freescale Semiconductor, I

Freescale Semiconductor, I nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development

More information

Study and installation of a VOIP service on ipaq in Linux environment

Study and installation of a VOIP service on ipaq in Linux environment Study and installation of a VOIP service on ipaq in Linux environment Volkan Altuntas Chaba Ballo Olivier Dole Jean-Romain Gotteland ENSEIRB 2002 Summary 1. Introduction 2. Presentation a. ipaq s characteristics

More information

Virtual Machines. www.viplavkambli.com

Virtual Machines. www.viplavkambli.com 1 Virtual Machines A virtual machine (VM) is a "completely isolated guest operating system installation within a normal host operating system". Modern virtual machines are implemented with either software

More information

REMOTE DEVELOPMENT OPTION

REMOTE DEVELOPMENT OPTION Leading the Evolution DATA SHEET MICRO FOCUS SERVER EXPRESS TM REMOTE DEVELOPMENT OPTION Executive Overview HIGH PRODUCTIVITY DEVELOPMENT FOR LINUX AND UNIX DEVELOPERS Micro Focus Server Express is the

More information

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE Solutions Introduction: Enterprises around the globe are mobilizing mission-critical services. Businesses get streamlined due

More information

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023 Operating Systems Autumn 2013 Outline 1 2 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview

More information

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to: 55 Topic 3 Computer Performance Contents 3.1 Introduction...................................... 56 3.2 Measuring performance............................... 56 3.2.1 Clock Speed.................................

More information

Efficiency Considerations of PERL and Python in Distributed Processing

Efficiency Considerations of PERL and Python in Distributed Processing Efficiency Considerations of PERL and Python in Distributed Processing Roger Eggen (presenter) Computer and Information Sciences University of North Florida Jacksonville, FL 32224 ree@unf.edu 904.620.1326

More information

Python for Series 60 Platform

Python for Series 60 Platform F O R U M N O K I A Getting Started with Python for Series 60 Platform Version 1.2; September 28, 2005 Python for Series 60 Platform Copyright 2005 Nokia Corporation. All rights reserved. Nokia and Nokia

More information

Evolution of the Data Center

Evolution of the Data Center CHAPTER 1 Evolution of the Data Center The need for consolidation in the data center didn't just occur overnight; we have been building up to it for a long time. In this chapter, we review the evolution

More information

Introduction to Embedded Systems. Software Update Problem

Introduction to Embedded Systems. Software Update Problem Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis logistics minor Today s topics: more software development issues 1 CS 5780 Software Update Problem Lab machines work let us know if they don t

More information

IBM WebSphere Business Integration for HIPAA

IBM WebSphere Business Integration for HIPAA Prepare your business for the future as you prepare for HIPAA IBM WebSphere Business Integration for HIPAA Helps ensure your business is ready to meet the HIPAA mandates Allows private and highly secure

More information

Developing, Deploying, and Debugging Applications on Windows Embedded Standard 7

Developing, Deploying, and Debugging Applications on Windows Embedded Standard 7 Developing, Deploying, and Debugging Applications on Windows Embedded Standard 7 Contents Overview... 1 The application... 2 Motivation... 2 Code and Environment... 2 Preparing the Windows Embedded Standard

More information

Reflection X Advantage Help. Date

Reflection X Advantage Help. Date Reflection X Advantage Help Date Copyrights and Notices Attachmate Reflection 2015 Copyright 2015 Attachmate Corporation. All rights reserved. No part of the documentation materials accompanying this Attachmate

More information

Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9. Do Now: Name 3 parts of the computer.

Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9. Do Now: Name 3 parts of the computer. C1 D1 Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9 Do Now: Name 3 parts of the computer. 1 Hardware and Software Hardware the physical, tangible parts of a computer

More information

FTP Client Engine Library for Visual dbase. Programmer's Manual

FTP Client Engine Library for Visual dbase. Programmer's Manual FTP Client Engine Library for Visual dbase Programmer's Manual (FCE4DB) Version 3.3 May 6, 2014 This software is provided as-is. There are no warranties, expressed or implied. MarshallSoft Computing, Inc.

More information

Systems Software. Introduction to Information System Components. Chapter 1 Part 2 of 4 CA M S Mehta, FCA

Systems Software. Introduction to Information System Components. Chapter 1 Part 2 of 4 CA M S Mehta, FCA Systems Software Introduction to Information System Components Chapter 1 Part 2 of 4 CA M S Mehta, FCA 1 Systems Software Learning Objects Task Statements 1.1 Identify deployment of different components

More information

Comparing Virtualization Technologies

Comparing Virtualization Technologies CHAPTER 2 Comparing Virtualization Technologies With this chapter, we begin our exploration of several popular virtualization strategies and explain how each works. The aim is to bring you the operational

More information

Microsoft Windows Server 2003 with Internet Information Services (IIS) 6.0 vs. Linux Competitive Web Server Performance Comparison

Microsoft Windows Server 2003 with Internet Information Services (IIS) 6.0 vs. Linux Competitive Web Server Performance Comparison April 23 11 Aviation Parkway, Suite 4 Morrisville, NC 2756 919-38-28 Fax 919-38-2899 32 B Lakeside Drive Foster City, CA 9444 65-513-8 Fax 65-513-899 www.veritest.com info@veritest.com Microsoft Windows

More information

Downsizing : Client/Server Computing Joe Wang, The Upjohn Company, Kalamazoo, MI (616)329-8421

Downsizing : Client/Server Computing Joe Wang, The Upjohn Company, Kalamazoo, MI (616)329-8421 Downsizing : Client/Server Computing Joe Wang, The Upjohn Company, Kalamazoo, MI (616)329-8421 ABSTRACT Client/Server "fever" is spreading across Corporate America like wild fire. Does your company want

More information

GAUSS 9.0. Quick-Start Guide

GAUSS 9.0. Quick-Start Guide GAUSS TM 9.0 Quick-Start Guide Information in this document is subject to change without notice and does not represent a commitment on the part of Aptech Systems, Inc. The software described in this document

More information

PROGRESS DATADIRECT QA AND PERFORMANCE TESTING EXTENSIVE TESTING ENSURES DATA CONNECTIVITY THAT WORKS

PROGRESS DATADIRECT QA AND PERFORMANCE TESTING EXTENSIVE TESTING ENSURES DATA CONNECTIVITY THAT WORKS Progress DataDirect Connect DATA SHEET PROGRESS DATADIRECT QA AND PERFORMANCE TESTING EXTENSIVE TESTING ENSURES DATA CONNECTIVITY THAT WORKS Progress DataDirect ODBC, JDBC and ADO.NET data connectivity

More information

Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC

Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC ABSTRACT As data sets continue to grow, it is important for programs to be written very efficiently to make sure no time

More information