MD240 Software - PowerPoint PPT Presentation

1 / 47
About This Presentation
Title:

MD240 Software

Description:

Evolution from explicit representation of computer components toward abstract ... 95, 98, 98SE, Millenium Edition. NT, 2000 (Professional, Server, etc., etc., etc. ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 48
Provided by: hksargov
Category:
Tags: md240 | software

less

Transcript and Presenter's Notes

Title: MD240 Software


1
MD240Software
2
Agenda
  • Overview of software topic areas
  • Trends in each area
  • Performance issues driving development of new
    software software trends

3
Building Blocks of Software
TREND Evolution from explicit representation of
computer components toward abstract
representation of computer components
4
Basic Building Blocks for Storing Data in
Computer
  • Binary Digit, or Bit
  • Binary 1 or 0
  • Byte
  • 8 bits
  • Nibble
  • Half of a byte
  • Chomp
  • Three bytes

5
Representing DataGrouping Bits Together
  • Bits are associated together to create data
    types and data structures
  • Each has its own length in bits that it needs for
    storage
  • Historically, programmers had to know the size of
    the thing they wanted to store on the computer
  • A floating point number might be stored as 16
    bits on a Windows DOS system, but as 32 bits on a
    Unix computer
  • This caused incompatibility of computer programs
    between different computers (of different
    operating systems)

6
Representing DataGrouping Bits Together
  • Basic data types
  • Character
  • Integer
  • Floating point number
  • Pointer (a computer address)

7
Representing Data Characters and Symbols
  • Coding Schemes (English/Arabic)
  • ASCII (American National Standard Code for
    Information Interchange)
  • EBCDIC (Extended Binary Coded Decimal Interchange
    Code)
  • Uni-code
  • 16-bit code that has the capacity of representing
    more than 65,000 characters and symbols
  • Necessary to represent Chinese, Japanese, and
    other large character sets

8
Representing DataGrouping Data Types Together
  • Compound data structures
  • String of characters
  • Ex This is a string
  • Array of numbers or structures
  • Ex 36, 3, 4, 7
  • List/Linked List list items that point to next
    item
  • ? ? ? ? ? ?
  • Structure a programmer-defined group of basic
    data structures
  • Ex firstname, lastname, height, age, favorite
    color
  • Ex string , string , integer, integer,
    enumeration

9
Representing Data Pictures
  • Raster (Bitmap) Pictures
  • Pixel picture element
  • a picture is stored as a grid of pixels
  • also stores the color (or light level) of each
    cell in the grid
  • picture granularity degrades if expanded
  • many file formats (BMP, GIF, JPG)
  • Vector Pictures (also PostScript/Encapsulated
    PostScript)
  • made up of individual, scaleable objects
  • uses equations to define objects in picture
  • same picture resolution whether expanded/shrunk
  • PostScript (.PS), PDF, scalable vector graphics
    (.SVG)
  • Digital Video (MPG, AVI, HDTV, etc.)
  • displays multiple frames (i.e. pictures) per
    second

10
Representing DataComputer File
  • A special data structure
  • When saved to hard drive, has several components
  • File information
  • Data records
  • End-of-File character

11
Representing DataAbstract Representation as
Objects
  • In much of modern computing, EVERYTHING is
    represented as an object
  • An object is a model of some thing from the real
    world
  • Real Things
  • people, places, events
  • Abstract Things
  • bank account
  • Computer Interface Things
  • button, checkbox, window

12
Representing DataAbstract Representation as
Objects
  • Objects have attributes (their characteristics)
    and methods (things that they can do
    behaviors)
  • A class is a template that defines the attributes
    and methods for a type of object
  • An instance of an object is created by using a
    special class method that allocates memory for
    one of those objects
  • String myString new String( I am a string )
  • File myFile new File( filename.txt)
  • Programs interact with data (objects) through the
    object methods
  • myString.makeuppercase()
  • would return the following I AM A STRING
  • myFile.sort()
  • would sort the contents of the file

13
Representing DataAbstract Representation as
Objects
  • Why objects are important and useful
  • Encapsulation
  • Information Hiding Data about an object is
    hidden inside of an object
  • In order to get data, one only must make a
    request for data from the object
  • Benefits
  • Dont need to know the structure of the data
  • Keeps people from messing in the data if they
    shouldnt be there
  • Inheritance
  • Subclasses can inherit the characteristics of a
    more general class
  • Benefits
  • Programmers can re-use classes to make up new
    classes, saving time and effort

14
Types of Software
TREND Evolution from operating systems and
application software on single computers, to
distributed applications connecting multiple
computers
15
Types of SoftwareSingle Computer View
  • Kernel (of an operating system)
  • The central program in an operating system it
    resides in memory at all times, and provides the
    most basic services
  • The part of the operating system closest to the
    machine that may activate the hardware directly
    or interface to another software layer that
    drives the hardware
  • Systems Software
  • An intermediary between computer hardware and
    application programs
  • Oriented toward managing the hardware layer and
    running applications
  • Application Software
  • A set of computer instructions, written in a
    programming language
  • Data processing activities that get things done
    for the end user

16
Types of SoftwareSingle Computer View
Application Software
Systems Software
CPU
Operating System
17
Types of SoftwareMultiple Computer View
Web Services Software - or - Middleware - or
- Enterprise Application Integration Software
Application Software 1
Application Software 2
Systems Software 1
Systems Software 2
messages passed between computers
Hardware 1
Hardware 2
Messaging Protocols Communications
Protocols Network Operating System
18
Systems Software
TREND Evolution from time-sharing, batch, and
command-line interactive, to personal
windows-based systems
TREND Evolution from bloated OSs to very small
OSs for hand-helds (PDAs, cell phones, etc.)
19
Systems SoftwareHistory
DEC PDP-1
(1961)
(1967)
(1969)
PDP-10 TOPS-10 MACRO-10
Multics
(1970-78)
Unix PDP-11/VAX
(1975)
ITS
PC Enthusiasts
(1982)
(1969-1990)
Berkeley Unix
ATT Unix
SunOS
CP/M
DOS
Mac OS
386BSD
(1991)
OS/2
FreeBSD
Linux
NetBSD
OpenBSD
Mac OS9
Windows
Sun Solaris
Mac OSX
20
Systems Software
  • System Control Responsibilities
  • Processing tasks
  • multiprogramming and multiprocessing
  • time-sharing
  • Managing memory and virtual memory (hard drive
    cache)
  • Running virtual machines on top of the operating
    system
  • ex VM/ESA operating environment
  • ex Java bytecode interpreter

21
Systems Support Programs
  • System utility programs
  • accomplish common tasks
  • ex defragment hard drive
  • MS Windows services
  • Unix/Linux daemons
  • System performance monitors
  • monitor computer system performance and produce
    reports containing detailed statistics concerning
    the use of system resources
  • System security monitors
  • monitor the use of a computer system to protect
    it and its resources from unauthorized use,
    fraud, or destruction

22
Systems Software
  • 3 Kinds of Operating Systems
  • Single-User OS
  • One user can access computer resources
  • Ex DOS, MacOS, Window 95, OS/2
  • Multi-User OS
  • Multiple users connected at once used on host
    systems
  • Ex Windows NT/2000, Unix, IBM AS/400
  • Network OS
  • Allows a network of computers to share resources,
    used on a server system
  • Ex Novell NetWare, Windows NT, Sun Solaris

23
Systems Software
  • System Control Programs
  • Operating systems
  • job scheduling, resource data management
  • ex DOS, VMS, MVS, MacOS, Unix/Linux, BeOS
  • Graphical user interfaces
  • Windows 3.0 ran on top of DOS
  • many different GUIs were available in late
    80s/early 90s
  • Graphic user interface (GUI) operating systems
  • ex Windows 95, Mac OS, OS/2

24
Pictures of Operating SystemsDOS
25
Pictures of Operating SystemsMacintosh 6.2
26
Pictures of Operating SystemsWindows 3.1
27
Pictures of Operating SystemsOS/2
28
Pictures of Operating SystemsBeOS
29
Pictures of Operating SystemsMacintosh OSX
30
Pictures of Operating SystemsLinux 5
31
Pictures of Operating SystemsAtheOS
32
Systems SoftwareThe Current State of the Desktop
  • Computer Operating Systems
  • UNIX flavors (POSIX compliant means complies
    with UNIX reqs)
  • Closed Source BSD, HP-UX, AIX
  • Open Source Linux, FreeBSD, OpenBSD, NetBSD
  • Mixed MacOS X (functionality similar to Unix a
    port of FreeBSD and Mach Kernel)
  • DOS
  • MS-DOS, PC-DOS, IBM DOS
  • Windows
  • 1.0, 2.0, 3.0, 3.1, 3.1 for Workgroups
  • 95, 98, 98SE, Millenium Edition
  • NT, 2000 (Professional, Server, etc., etc., etc.)
  • XP (functionality similar to Unix)
  • MacOS
  • 1.0, , 9
  • BeOS

33
Systems SoftwareOther Operating Systems
  • Handhelds/Palmtops/PDA Operating Systems
  • Palm
  • Windows CE
  • Cellular Phone Operating Systems
  • Symbian OS (symbian.com)
  • JBlend OS (jblend.com)
  • JINOS Java virtual machine (veloxsoft.com)

34
Systems SoftwareSymbian OS
35
Application Software
TREND Evolution from independent applications to
integrated sets of applications
36
Evolution of Application Functionality
  • Applications used to function independently of
    one another (up until late 1980s/early 1990s)
  • This created lots of busy work in the office
    (costs to ISD)
  • Office workers were often printing out documents,
    then cutting and pasting them together
  • Literally with scissors, Scotch tape and glue
  • Office workers were often retyping data from one
    application into another
  • Office workers were often transferring data by
    saving it from one application to a Data
    Interchange File (.dif), then opening the DIF
    file in another program

37
Application SoftwareWord Perfect 5 (1990)
38
Evolution of Application Functionality
  • ISSUE1 How can applications work together?
  • Many applications now work as objects
  • Object Linking and Embedding (OLE)
  • link between applications, applications work
    within other applications
  • OLE was one of the reasons for Microsoft to
    create MS Office, since all of the applications
    could now import objects from other applications
  • ISSUE 2 How can we easily share/access data?
  • Open Data Base Connectivity (ODBC) provided a
    standardized method for any application to access
    and transfer data

39
Evolution of Application FunctionalityObject
Linking and Embedding (OLE)
Word.exe
MSWord document
embedded Excel spreadsheet
Excel.exe
40
Integrated Applications
  • Microsoft Office
  • Runs on MS Windows, Mac OS operating systems
  • WordPerfect Office
  • Runs on MS Windows, Linux operating systems
  • Lotus SmartSuite
  • Runs on MS Windows
  • Sun StarOffice
  • Runs on MS Windows, Solaris, Linux operating
    systems
  • OpenOffice (openoffice.org) is the free open
    source version of this
  • Gnome Office (gnome.org)
  • Runs on Linux, being integrated together with
    OpenOffice
  • KDE Office (koffice.org)
  • Runs on Linux

41
Types of Applications in Integrated Software
Packages
  • Word processing
  • Spreadsheet software
  • Desktop publishing
  • Database management systems (DBMSs)
  • Graphics
  • Multimedia
  • Mathematical Formula editors
  • Communications software
  • Workgroup software
  • Enterprise-wide integrated software

42
Integrated ApplicationsOpenOffice
43
Integrated ApplicationsOpenOffice
44
Enterprise Software
TREND Evolution from local/functional
applications to enterprise-wide and
inter-organizational software applications
45
Enterprise SoftwareData Warehouse/Analytical/Data
Mining
46
Enterprise SoftwareDistributed (Heterogeneous)
Databases
47
Enterprise SoftwareEnterprise Planning System
An order triggers a series of events throughout
the organization.
Write a Comment
User Comments (0)
About PowerShow.com