Module 2: Computer Systems and The IT Industry: Cloud Computing-Software As A Service
Module 2: Computer Systems and The IT Industry: Cloud Computing-Software As A Service
Readings
• Chapter 2 in Managing Information Technology, pp. 34-59
Kulkarni, G., Gambhir, J., & Palwe, R. (March, 2012). Cloud computing-software as a
service. International Journal of Cloud Computing and Services Science, 1(1), 11-16.
Nahlah Hajla 1
day when there was no such thing as Windows and all computers ran using
something called “DOS” (disk operating system).
Operating Systems
Operating systems are often classified based on their ability to manage single or
multiple users and the techniques used by each operating system to manage users.
Examples of those techniques are as follows. Multiprogramming, i.e., programming
that allows overlap of input and output operations with processing time, is employed
on larger machines. Multitasking, which is similar to multiprogramming, is employed
on microcomputers. Multithreading is similar to multitasking, but multiple threads
within the same program are overlapped. Finally, multiprocessing is work that takes
place when two or more CPUs are installed on the same computer system. Virtual
memory permits multiprogramming to operate more efficiently.
Operating systems fall into two categories: proprietary and open systems. Proprietary
operating systems are written for particular hardware configurations. Mainframe
computer systems use a proprietary operating system, as does the Apple brand of
microcomputers. Essentially, proprietary operating systems can only run on the
hardware for which they were developed.
Open system operating systems can run on multiple vendor platforms. Examples of
open systems are UNIX, Linux, and Windows. To qualify as an open system, the
operating system must adhere to a set of standards that promote interoperability
between the basic hardware components: CPU, input and output devices, and files
and compatibility with applications software interfaces.
Machine language:
The “codes” or languages used to write software have changed dramatically over the
past 50 to 60 years. In first-generation language—machine language—each instruction
was expressed in a unique form for each particular computer. A complete program
Nahlah Hajla 2
would consist of thousands of instructions—programming in machine language was an
extremely time-consuming, tedious process. Assembly language is considered a
second-generation language. Mnemonic operation codes were added to substitute
for some of the machine language codes. Assembler was used to convert mnemonic
codes to machine language code. Third-generation languages, also called
procedural languages, are expressed as step-by-step instructions. These programs
were typically machine-independent and easier for programmers to learn. The
program would need to be compiled or interpreted so it would be readable at the
machine language level. Fourth-generation languages are called nonprocedural
languages (4GL). They are much easier to program, but much less efficient for
computers to run. They use more English-like statements for program instructions.
They are often referred to as languages for business intelligence (BI) application
development—SAS, IBM Cognos, SAP business objects, etc.
Markup languages:
Another type of programming language is markup language. Markup language
employs “tags” to mark up documents. For example, HTML—hypertext markup
language—is used to create Web pages. XML is used to facilitate data interchange
among Web pages.
Nahlah Hajla 3