SlideShare a Scribd company logo
1 of 45
TRENDS AND
 TECHNOLOGIES IN
SYSTEM SOFTWARE
•   Introduction
•   What are the system software in practice?
•   Operating systems.
•   Utility software.
•   Loaders, Linkers and decoders.
•   Compilers.




AGENDA
INTRODUCTION


                     Invitation to Computer
3              Science, C++ Version, Fourth
                                     Edition
• System software
    • Acts as an intermediary between users and hardware

    • Creates a virtual environment for the user that hides the
      actual computer architecture

• Virtual machine (or virtual environment)
    • Set of services and resources created by the system software
      and seen by the user



System Software: The
Virtual Machine                                          Invitation to Computer
4                                                  Science, C++ Version, Fourth
                                                                         Edition
Figure 6.1
                              The Role of System Software     5
Invitation to Computer Science, C++ Version, Fourth Edition
• System software is a collection of many different
  programs
• Operating system
    • Controls the overall operation of the computer
    • Communicates with the user
    • Determines what the user wants
    • Activates system programs, applications packages, or user
      programs to carry out user requests




Types of System Software                               Invitation to Computer
6                                                Science, C++ Version, Fourth
                                                                       Edition
Figure 6.2
                                Types of System Software      7
Invitation to Computer Science, C++ Version, Fourth Edition
• User interface
    • Graphical user interface (GUI) provides graphical control of
      the capabilities and services of the computer

• Language services
    • Assemblers, compilers, and interpreters
    • Allow you to write programs in a high-level, user-oriented
      language, and then execute them


Types of System Software
(continued)                                             Invitation to Computer
8                                                 Science, C++ Version, Fourth
                                                                        Edition
• Memory managers
    • Allocate and retrieve memory space

• Information managers
    • Handle the organization, storage, and retrieval of
      information on mass storage devices

• I/O systems
    • Allow the use of different types of input and output devices


Types of System Software
(continued)                                              Invitation to Computer
9                                                  Science, C++ Version, Fourth
                                                                         Edition
• Scheduler

     • Keeps a list of programs ready to run and selects the one
       that will execute next


• Utilities

     • Collections of library routines that provide services either to
       user or other system routines

Types of System Software
(continued)                                                Invitation to Computer
10                                                   Science, C++ Version, Fourth
                                                                           Edition
• The three major functions of system software are

• 1. Allocating system resources
• 2. Monitoring system activities
• 3. File and disk management



Functions Of System Software
                                            Invitation to Computer
11                                    Science, C++ Version, Fourth
                                                            Edition
• Linkers and loaders have been part of the software
  toolkit almost as long as there have been
  computers, since they are the critical tools that permit
  programs to be built from modules rather than as one
  big monolith.
• Linker is a program that takes one or
  more objects generated by a compiler and combines
  them into a single executable program.
 Usually large applications are written into small
  modules and are then compiled into object codes. A
  linker is a program that combines these object
  modules to form an executable.


LINKER AND LOADER
• As early as 1947, programmers started to use primitive
  loaders that could take program routines stored on
  separate tapes and combine and relocate them into one
  program.
• By the early 1960s, these loaders had evolved into full-
  fledged linkage editors.
• During the 1970s and 1980s there was little progress in
  linking technology. This is due to the arrival of virtual
  memory.
• In the 1990s linkers have again become more complex,
  adding support for modern features including dynamically
  linked shared libraries.




CONT
• Loader is utility program which takes object code as input
   prepares it for execution and loads the executable code into
   the memory. Thus loader is actually responsible for
   initiating the execution process.
Functions of Loader:
 The loader is responsible for the activities such as
   allocation, linking, relocation and loading
         1)It allocates the space for program in the memory,
 by      calculating the size of the program. This activity is
 called           allocation.




LOADER
2) There are some address dependent locations in the
program, such address constants must be adjusted
according to allocated space, such activity done by
loader is called relocation.

3) Finally it places all the machine instructions and data
of corresponding programs and subroutines into the
memory. Thus program now becomes ready for
execution, this activity is called loading.




CONT
Utility software is system software designed to
    help analyze, configure, optimize or maintain a
    computer. A single piece of utility software is
    usually called a utility or tool.
   Utility software usually focuses on how the
    computer infrastructure (including the computer
    hardware, operating system, application
    software and data storage) operates.



UTILITY SOFTWARE
UTILITY SOFTWARE CATEGORIES

Anti-virus utilities scan for computer viruses.
Backup utilities can make a copy of all information stored on a
 disk, and restore either the entire disk (e.g. in an event of disk failure)
 or selected files (e.g. in an event of accidental deletion).
Data compression utilities output a shorter stream or a smaller file
 when provided with a stream or file.
Disk checkers can scan operating hard drive.
Disk cleaners can find files that are unnecessary to computer
 operation, or take up considerable amounts of space. Disk cleaner
 helps the user to decide what to delete when their hard disk is full.
Disk compression utilities can transparently compress/uncompress
 the contents of a disk, increasing the capacity of the disk.
•   Disk defragmenters     •   Hex editors
•   Disk partitions        •   Memory testers
•   Disk space analyzers   •   Network utilities
•   Disk storage           •   Registry cleaners
•   Archive                •   Screensavers
•   File managers          •   System monitors
•   Cryptographic          •   System profilers
• Microsoft software utility first introduced with Windows 98 and
  included with all other versions of Windows released after it that
  enables users to configure how their computer starts and what
  programs or services automatically load each time the computer
  starts.
• Users running these versions of Windows can open msconfig by
  following the below steps.
    • Click Start and Run.
    • Type msconfig and press enter, once done you should see the System
      Configuration Utility window as shown in the below example picture.



MICROSOFT UTILITY SOFTWARE
CCleaner (formerly Crap Cleaner), developed by Piriform, is
 a utility program used to clean potentially unwanted files and
 invalid Windows Registry entries from a computer.
A public version 1.01 for the Mac OS X has been released along
 with a Network Edition.
CCleaner can be employed to uninstall programs.
CCleaner allows the alteration of start-up programs, similar to
 the Microsoft Windows MSConfig utility.
Users can disable start-up programs.
As of version 2.19.901, CCleaner also allows users to delete
 system restore points.
CCLEANER

Developer(s)       :Piriform
Initial release    :23 September 2003; 8 years ago
 Stable release    :3.20.1750 / 25 June 2012; 10 days ago
Operating system   : Windows 2000 and later
                       Mac OS X 10.5 and later
Platform           :IA-32 and x64
Available in       :47 languages
Type               :Utility software
License            :Freemium
Website            :www.piriform.com/ccleaner
OPERATING SYSTEM
• Operating System is a software, which makes a computer
  to actually work.

• It is the software the enables all the programs we use.

• The OS organizes and controls the hardware.

• OS acts as an interface between the application programs
  and the machine hardware.

• Examples: Windows, Linux, Unix and Mac OS, etc.,
• Batch processing
• Interactive processing
  • Requires real-time processing
• Time-sharing/Multitasking
  • Implemented by Multiprogramming
• Multiprocessor machines



Evolution of Shared
Computing
Batch processing
Interactive processing
• Users seeking services from same machine at the same
  time – time sharing
  • Implemented using a technique called multiprogramming (time is
    divided into multiple intervals, execution of one job is limited to a
    single time interval)
• Multiple terminals connected to same machine
  • Driven by the fact that in the past computers were very expensive
• When multiprogramming is applied to single-
  user environments is usually called multitasking



Time Sharing / Multitasking
• Provide time sharing/multi-tasking capabilities by assigning
  different tasks to different processors as well as sharing the
  time of one single processor
• Problems to solve:
  • Load balancing – dynamically allocating tasks to the various
    processor so that all of them are used efficiently
  • Scaling – breaking tasks into sub-tasks compatible with the number
    of processors available
• Trend to develop a network wide operating system
  rather than networks of individual operating systems


Multiprocessor Operating
Systems
• Used in hand held devices (PDAs), mobile phones, cars,
  etc…
• Limited data storage and power conservation are the big
  challenges.
• Examples: VxWorks, Windows CE (Pocket PC), Palm
  OS, Symbinan, ThredX, RomDOS, etc…



Embedded Operating
Systems
• Many people are not satisfied with proprietary operating
  system.

• As Linux is a open source operating system, they
  develop their own kernal and other applications for their
  system.




Open source operating
       system
NEXT GENERATION


• In future the microsoft is deciding to develop cloud OS.
• They decided to develop Operating System integrated
  with browser.
• Many OS like Google Chrome OS, Firefox OS is coming
  up.
• A compiler is a computer program that transforms source
  code written in one programming language (the source
  language), into another programming language (the target
  language, often having a binary form known as object
  code).
• The history of the compilers takes us to the early 1940’s.




COMPILERS
• In 1945- Konrad Zuse began work on Plankalkul (Plan
  Calculus), the first algorithmic programming language,
  with an aim of creating the theoretical preconditions for
  the formulation of problems of a general nature.
• In 1948- Claude Shannon´s "The Mathematical Theory of
  Communication" showed engineers how to code data so
  they could check for accuracy after transmission between
  computers.
  • Shannon identified the bit as the fundamental unit of data
    and, coincidentally, the basic unit of computation.



COMPILERS- History
• The term compiler was coined by Hopper.
• The first compiler was written by Grace Hopper, in 1952,
  for the A-0 System language.
• The A-0 System was a set of instructions that could
  translate symbolic mathematical code into machine
  language.




COMPILERS- Birth
• In 1953- John Backus completed speedcoding for IBM´s
  701 computer. Although speedcoding demanded more
  memory and compute time, it trimmed weeks off of the
  programming schedule.
• One of the first real compilers was the FORTRAN
  compiler of the late 1950s.




COMPILERS- History
• During the late 1970s and early 1980s, optimizing
  compilers continued to improve to the point that all but
  the most critical portions of general-purpose programs
  were written in high-level languages.
• On the average, the compilers generate better code than
  most assembly language programmers. This was often
  because a compiler could make better use of hardware
  resources such as registers.




COMPILERS- History
• In 1953- John Backus completed speedcoding for IBM´s
  701 computer. Although speedcoding demanded more
  memory and compute time, it trimmed weeks off of the
  programming schedule.
• ALGOL 58 for Z22 computer.
• ALTAC (extended Fortran compiler) was also available
  on the Philco 2000




COMPILERS- History
• Self-hosting Compilers:
• A bootstrapping problem: First, such compiler for a
  language must be compiled either by a compiler written
  in a different language.
  • The first self-hosting compiler (excluding assemblers) was
    written for Lisp by Hart and Levin at MIT in 1962.
  • They wrote a Lisp compiler in Lisp, testing it inside an
    existing Lisp interpreter.
• Open source compilers.



COMPILERS- History
Rob Walling- “The Future Of Compilers”
(www.softwarebyrob.com/2006/04/27/)
• Reaching the point of employing Artificial Intelligence
  (AI) in an attempt to see the future.
• Compilers operate with no a priori knowledge of the
  code beyond the language syntax definitions.
• Determining how a person, file or database is going to
  interact with an application until it actually happens.
• This problem is hard, but not unsolvable.



COMPILERS- Future
• It started with huge multi-pass designs for COBOL and
  FORTRAN.
• Then we moved into block-structured languages (algol,
  pascal, and even C).
• Then we moved into OOP: C++, Java, .NET.
• Some      IDEs    now     use    parsers   to  validate
  syntax/semantics as programs are entered.
  • This started with legacy Quickbasic, but QB was using it to
    do part of compilation as users entered each line (because
    PCs were slow)



CONCLUSION
• The former were statically typed, often had manual
  memory management and powerful optimizing compilers
  (C, Pascal, Ada).
• The later were dynamically (often weakly) typed,
  interpreted, and were used for scripting and learning
  (BASIC, AWK, Unix shells).
• Today, the distinction is blurred: interpreters became fast
  enough by using just-in-time compilation (JavaScript,
  Lua) and compilers got convenient features making them
  more usable
• http://veekspace.blogspot.in
• http://www.computerhistory.org
• http://cnx.org




REFERENCES
Trends and technologies in system softwares

More Related Content

What's hot

Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasi
Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasiPagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasi
Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasiReggie Cruz
 
lesson 3 memo, adyenda, at katitikan ng pulong.pptx
lesson 3 memo, adyenda, at katitikan ng pulong.pptxlesson 3 memo, adyenda, at katitikan ng pulong.pptx
lesson 3 memo, adyenda, at katitikan ng pulong.pptxjanemorimonte2
 
Dimensions of communication
Dimensions of communicationDimensions of communication
Dimensions of communicationGelinaGlova
 
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptx
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptxGE 4 - PURPOSIVE COMMUNICATION JANUARY.pptx
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptxJubylynAficial
 
Nature of Communication
Nature of CommunicationNature of Communication
Nature of Communicationjivcodera21
 
Mapanuring pagbasa sa akademiya
Mapanuring pagbasa sa akademiyaMapanuring pagbasa sa akademiya
Mapanuring pagbasa sa akademiyaRochelle Nato
 
Mga pananaw sa proseso ng pagbasa
Mga pananaw sa proseso ng pagbasaMga pananaw sa proseso ng pagbasa
Mga pananaw sa proseso ng pagbasamajoydrew
 
Liham pangnegosyo at memorandum
Liham pangnegosyo at memorandumLiham pangnegosyo at memorandum
Liham pangnegosyo at memorandumRochelle Nato
 
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasa
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasaMetakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasa
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasayencobrador
 
Group 5 filipino- Pagkalap ng Datos sa Pananaliksik
Group 5 filipino- Pagkalap ng Datos sa PananaliksikGroup 5 filipino- Pagkalap ng Datos sa Pananaliksik
Group 5 filipino- Pagkalap ng Datos sa Pananaliksiklorrainejunio1
 
Activity 1: Original or Derivative ICT Content
Activity 1: Original or Derivative ICT ContentActivity 1: Original or Derivative ICT Content
Activity 1: Original or Derivative ICT ContentJuliana Celenia A. Biazon
 
Mga batayang kaalaman sa pagbasa
Mga batayang kaalaman sa pagbasaMga batayang kaalaman sa pagbasa
Mga batayang kaalaman sa pagbasaJericho Mariano
 
Batayang kaalaman sa mapanuring pagbasa
Batayang kaalaman sa mapanuring pagbasaBatayang kaalaman sa mapanuring pagbasa
Batayang kaalaman sa mapanuring pagbasaRochelle Nato
 
Mga pilosopiya ng pagsulat
Mga pilosopiya ng pagsulatMga pilosopiya ng pagsulat
Mga pilosopiya ng pagsulatIron Man
 

What's hot (20)

Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasi
Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasiPagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasi
Pagbasa at pagsusuri ng isang teksto sa pagpapayaman ng kultural na literasi
 
lesson 3 memo, adyenda, at katitikan ng pulong.pptx
lesson 3 memo, adyenda, at katitikan ng pulong.pptxlesson 3 memo, adyenda, at katitikan ng pulong.pptx
lesson 3 memo, adyenda, at katitikan ng pulong.pptx
 
Introduction to communication
Introduction to communicationIntroduction to communication
Introduction to communication
 
Dimensions of communication
Dimensions of communicationDimensions of communication
Dimensions of communication
 
Good and Bad Design
Good and Bad DesignGood and Bad Design
Good and Bad Design
 
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptx
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptxGE 4 - PURPOSIVE COMMUNICATION JANUARY.pptx
GE 4 - PURPOSIVE COMMUNICATION JANUARY.pptx
 
Metakognitibong pagbasa group ii
Metakognitibong pagbasa group iiMetakognitibong pagbasa group ii
Metakognitibong pagbasa group ii
 
Tsapter 1 pagbasa
Tsapter 1 pagbasaTsapter 1 pagbasa
Tsapter 1 pagbasa
 
The nature of communication
The nature of communicationThe nature of communication
The nature of communication
 
Nature of Communication
Nature of CommunicationNature of Communication
Nature of Communication
 
Mapanuring pagbasa sa akademiya
Mapanuring pagbasa sa akademiyaMapanuring pagbasa sa akademiya
Mapanuring pagbasa sa akademiya
 
Media literacy
Media literacy Media literacy
Media literacy
 
Mga pananaw sa proseso ng pagbasa
Mga pananaw sa proseso ng pagbasaMga pananaw sa proseso ng pagbasa
Mga pananaw sa proseso ng pagbasa
 
Liham pangnegosyo at memorandum
Liham pangnegosyo at memorandumLiham pangnegosyo at memorandum
Liham pangnegosyo at memorandum
 
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasa
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasaMetakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasa
Metakognitibong pagbasa tungo sa mapanuring pagbasa at mambabasa
 
Group 5 filipino- Pagkalap ng Datos sa Pananaliksik
Group 5 filipino- Pagkalap ng Datos sa PananaliksikGroup 5 filipino- Pagkalap ng Datos sa Pananaliksik
Group 5 filipino- Pagkalap ng Datos sa Pananaliksik
 
Activity 1: Original or Derivative ICT Content
Activity 1: Original or Derivative ICT ContentActivity 1: Original or Derivative ICT Content
Activity 1: Original or Derivative ICT Content
 
Mga batayang kaalaman sa pagbasa
Mga batayang kaalaman sa pagbasaMga batayang kaalaman sa pagbasa
Mga batayang kaalaman sa pagbasa
 
Batayang kaalaman sa mapanuring pagbasa
Batayang kaalaman sa mapanuring pagbasaBatayang kaalaman sa mapanuring pagbasa
Batayang kaalaman sa mapanuring pagbasa
 
Mga pilosopiya ng pagsulat
Mga pilosopiya ng pagsulatMga pilosopiya ng pagsulat
Mga pilosopiya ng pagsulat
 

Viewers also liked

14.jun.2012
14.jun.201214.jun.2012
14.jun.2012Tech_MX
 
09 binary-trees
09 binary-trees09 binary-trees
09 binary-treesTech_MX
 
Constants
ConstantsConstants
ConstantsTech_MX
 
Graph theory
Graph theoryGraph theory
Graph theoryTech_MX
 
Mutable and immutable classes
Mutable and  immutable classesMutable and  immutable classes
Mutable and immutable classesTech_MX
 
More on Lex
More on LexMore on Lex
More on LexTech_MX
 
What are interpersonal skills
What are interpersonal skillsWhat are interpersonal skills
What are interpersonal skillsTech_MX
 
Linear programming problem
Linear programming problemLinear programming problem
Linear programming problemTech_MX
 
Investment problem
Investment problemInvestment problem
Investment problemTech_MX
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2Tech_MX
 
Buddy system final
Buddy system finalBuddy system final
Buddy system finalTech_MX
 
Set data structure
Set data structure Set data structure
Set data structure Tech_MX
 
Graph data structure
Graph data structureGraph data structure
Graph data structureTech_MX
 
Inline function
Inline functionInline function
Inline functionTech_MX
 
E post office system
E post office systemE post office system
E post office systemTech_MX
 
Combined paging and segmentation
Combined paging and segmentationCombined paging and segmentation
Combined paging and segmentationTech_MX
 

Viewers also liked (19)

14.jun.2012
14.jun.201214.jun.2012
14.jun.2012
 
09 binary-trees
09 binary-trees09 binary-trees
09 binary-trees
 
Constants
ConstantsConstants
Constants
 
Graph theory
Graph theoryGraph theory
Graph theory
 
Mutable and immutable classes
Mutable and  immutable classesMutable and  immutable classes
Mutable and immutable classes
 
More on Lex
More on LexMore on Lex
More on Lex
 
What are interpersonal skills
What are interpersonal skillsWhat are interpersonal skills
What are interpersonal skills
 
Linear programming problem
Linear programming problemLinear programming problem
Linear programming problem
 
Investment problem
Investment problemInvestment problem
Investment problem
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2
 
Buddy system final
Buddy system finalBuddy system final
Buddy system final
 
Set data structure
Set data structure Set data structure
Set data structure
 
Graph data structure
Graph data structureGraph data structure
Graph data structure
 
Inline function
Inline functionInline function
Inline function
 
E post office system
E post office systemE post office system
E post office system
 
Combined paging and segmentation
Combined paging and segmentationCombined paging and segmentation
Combined paging and segmentation
 
Linkers
LinkersLinkers
Linkers
 
Uid
UidUid
Uid
 
Spss
SpssSpss
Spss
 

Similar to Trends and technologies in system softwares

software system and application software
software system and application softwaresoftware system and application software
software system and application softwareCyriac Jose
 
Lec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxLec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxShabanaShafi3
 
Unit 1 operating system
Unit 1 operating systemUnit 1 operating system
Unit 1 operating systemMeeta
 
ICT Presentation operating system and types.pptx
ICT Presentation operating system and types.pptxICT Presentation operating system and types.pptx
ICT Presentation operating system and types.pptxShehlafaiz1
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07ainfara
 
System software and its types
System software and its typesSystem software and its types
System software and its typessamina khan
 
Unit 1 introduction to os
Unit 1 introduction to osUnit 1 introduction to os
Unit 1 introduction to osGaneshThapa27
 
Chapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxChapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxgowthamiv26
 
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...naikayushkumar32
 
Chapter 05 os dan utility program csc & tts
Chapter 05 os dan utility program csc & ttsChapter 05 os dan utility program csc & tts
Chapter 05 os dan utility program csc & ttsHisyam Rosly
 
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...yaminohime
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07anishamca
 
Uc14 chap05
Uc14 chap05Uc14 chap05
Uc14 chap05ayahye
 

Similar to Trends and technologies in system softwares (20)

software system and application software
software system and application softwaresoftware system and application software
software system and application software
 
Lec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxLec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptx
 
os_1.pdf
os_1.pdfos_1.pdf
os_1.pdf
 
Computing 8
Computing 8Computing 8
Computing 8
 
Unit 1 operating system
Unit 1 operating systemUnit 1 operating system
Unit 1 operating system
 
ICT Presentation operating system and types.pptx
ICT Presentation operating system and types.pptxICT Presentation operating system and types.pptx
ICT Presentation operating system and types.pptx
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
System software and its types
System software and its typesSystem software and its types
System software and its types
 
os.ppt
os.pptos.ppt
os.ppt
 
systems_software
systems_softwaresystems_software
systems_software
 
Unit 1 introduction to os
Unit 1 introduction to osUnit 1 introduction to os
Unit 1 introduction to os
 
Chapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxChapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptx
 
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...
JULY-DEC_2023_BSCBT_3_SEM_V9_BSCBT301_BSCBT301_Fundamentals_of_IT_Unit_2__Ppt...
 
Software: Systems and Application Software
Software:  Systems and Application SoftwareSoftware:  Systems and Application Software
Software: Systems and Application Software
 
Operating system concept
Operating system conceptOperating system concept
Operating system concept
 
Chapter 05 os dan utility program csc & tts
Chapter 05 os dan utility program csc & ttsChapter 05 os dan utility program csc & tts
Chapter 05 os dan utility program csc & tts
 
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 5 - System ...
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
Uc14 chap05
Uc14 chap05Uc14 chap05
Uc14 chap05
 
Uc14 chap05
Uc14 chap05Uc14 chap05
Uc14 chap05
 

More from Tech_MX

Virtual base class
Virtual base classVirtual base class
Virtual base classTech_MX
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimationTech_MX
 
Templates in C++
Templates in C++Templates in C++
Templates in C++Tech_MX
 
String & its application
String & its applicationString & its application
String & its applicationTech_MX
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2Tech_MX
 
Stack data structure
Stack data structureStack data structure
Stack data structureTech_MX
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application Tech_MX
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applicationsTech_MX
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating SystemTech_MX
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Tech_MX
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pcTech_MX
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbmsTech_MX
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)Tech_MX
 
Memory dbms
Memory dbmsMemory dbms
Memory dbmsTech_MX
 
Linear regression
Linear regressionLinear regression
Linear regressionTech_MX
 
Keyboard interrupt
Keyboard interruptKeyboard interrupt
Keyboard interruptTech_MX
 
Introduction to loaders
Introduction to loadersIntroduction to loaders
Introduction to loadersTech_MX
 
Interpersonal communication
Interpersonal communicationInterpersonal communication
Interpersonal communicationTech_MX
 
Interesting applications of graph theory
Interesting applications of graph theoryInteresting applications of graph theory
Interesting applications of graph theoryTech_MX
 

More from Tech_MX (20)

Virtual base class
Virtual base classVirtual base class
Virtual base class
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimation
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
 
String & its application
String & its applicationString & its application
String & its application
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2
 
Stack data structure
Stack data structureStack data structure
Stack data structure
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applications
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating System
 
Parsing
ParsingParsing
Parsing
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pc
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbms
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)
 
Memory dbms
Memory dbmsMemory dbms
Memory dbms
 
Linear regression
Linear regressionLinear regression
Linear regression
 
Keyboard interrupt
Keyboard interruptKeyboard interrupt
Keyboard interrupt
 
Introduction to loaders
Introduction to loadersIntroduction to loaders
Introduction to loaders
 
Interpersonal communication
Interpersonal communicationInterpersonal communication
Interpersonal communication
 
Interesting applications of graph theory
Interesting applications of graph theoryInteresting applications of graph theory
Interesting applications of graph theory
 

Recently uploaded

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Recently uploaded (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Trends and technologies in system softwares

  • 1. TRENDS AND TECHNOLOGIES IN SYSTEM SOFTWARE
  • 2. Introduction • What are the system software in practice? • Operating systems. • Utility software. • Loaders, Linkers and decoders. • Compilers. AGENDA
  • 3. INTRODUCTION Invitation to Computer 3 Science, C++ Version, Fourth Edition
  • 4. • System software • Acts as an intermediary between users and hardware • Creates a virtual environment for the user that hides the actual computer architecture • Virtual machine (or virtual environment) • Set of services and resources created by the system software and seen by the user System Software: The Virtual Machine Invitation to Computer 4 Science, C++ Version, Fourth Edition
  • 5. Figure 6.1 The Role of System Software 5 Invitation to Computer Science, C++ Version, Fourth Edition
  • 6. • System software is a collection of many different programs • Operating system • Controls the overall operation of the computer • Communicates with the user • Determines what the user wants • Activates system programs, applications packages, or user programs to carry out user requests Types of System Software Invitation to Computer 6 Science, C++ Version, Fourth Edition
  • 7. Figure 6.2 Types of System Software 7 Invitation to Computer Science, C++ Version, Fourth Edition
  • 8. • User interface • Graphical user interface (GUI) provides graphical control of the capabilities and services of the computer • Language services • Assemblers, compilers, and interpreters • Allow you to write programs in a high-level, user-oriented language, and then execute them Types of System Software (continued) Invitation to Computer 8 Science, C++ Version, Fourth Edition
  • 9. • Memory managers • Allocate and retrieve memory space • Information managers • Handle the organization, storage, and retrieval of information on mass storage devices • I/O systems • Allow the use of different types of input and output devices Types of System Software (continued) Invitation to Computer 9 Science, C++ Version, Fourth Edition
  • 10. • Scheduler • Keeps a list of programs ready to run and selects the one that will execute next • Utilities • Collections of library routines that provide services either to user or other system routines Types of System Software (continued) Invitation to Computer 10 Science, C++ Version, Fourth Edition
  • 11. • The three major functions of system software are • 1. Allocating system resources • 2. Monitoring system activities • 3. File and disk management Functions Of System Software Invitation to Computer 11 Science, C++ Version, Fourth Edition
  • 12. • Linkers and loaders have been part of the software toolkit almost as long as there have been computers, since they are the critical tools that permit programs to be built from modules rather than as one big monolith. • Linker is a program that takes one or more objects generated by a compiler and combines them into a single executable program.  Usually large applications are written into small modules and are then compiled into object codes. A linker is a program that combines these object modules to form an executable. LINKER AND LOADER
  • 13. • As early as 1947, programmers started to use primitive loaders that could take program routines stored on separate tapes and combine and relocate them into one program. • By the early 1960s, these loaders had evolved into full- fledged linkage editors. • During the 1970s and 1980s there was little progress in linking technology. This is due to the arrival of virtual memory. • In the 1990s linkers have again become more complex, adding support for modern features including dynamically linked shared libraries. CONT
  • 14. • Loader is utility program which takes object code as input prepares it for execution and loads the executable code into the memory. Thus loader is actually responsible for initiating the execution process. Functions of Loader:  The loader is responsible for the activities such as allocation, linking, relocation and loading 1)It allocates the space for program in the memory, by calculating the size of the program. This activity is called allocation. LOADER
  • 15. 2) There are some address dependent locations in the program, such address constants must be adjusted according to allocated space, such activity done by loader is called relocation. 3) Finally it places all the machine instructions and data of corresponding programs and subroutines into the memory. Thus program now becomes ready for execution, this activity is called loading. CONT
  • 16. Utility software is system software designed to help analyze, configure, optimize or maintain a computer. A single piece of utility software is usually called a utility or tool. Utility software usually focuses on how the computer infrastructure (including the computer hardware, operating system, application software and data storage) operates. UTILITY SOFTWARE
  • 17. UTILITY SOFTWARE CATEGORIES Anti-virus utilities scan for computer viruses. Backup utilities can make a copy of all information stored on a disk, and restore either the entire disk (e.g. in an event of disk failure) or selected files (e.g. in an event of accidental deletion). Data compression utilities output a shorter stream or a smaller file when provided with a stream or file. Disk checkers can scan operating hard drive. Disk cleaners can find files that are unnecessary to computer operation, or take up considerable amounts of space. Disk cleaner helps the user to decide what to delete when their hard disk is full. Disk compression utilities can transparently compress/uncompress the contents of a disk, increasing the capacity of the disk.
  • 18. Disk defragmenters • Hex editors • Disk partitions • Memory testers • Disk space analyzers • Network utilities • Disk storage • Registry cleaners • Archive • Screensavers • File managers • System monitors • Cryptographic • System profilers
  • 19. • Microsoft software utility first introduced with Windows 98 and included with all other versions of Windows released after it that enables users to configure how their computer starts and what programs or services automatically load each time the computer starts. • Users running these versions of Windows can open msconfig by following the below steps. • Click Start and Run. • Type msconfig and press enter, once done you should see the System Configuration Utility window as shown in the below example picture. MICROSOFT UTILITY SOFTWARE
  • 20.
  • 21. CCleaner (formerly Crap Cleaner), developed by Piriform, is a utility program used to clean potentially unwanted files and invalid Windows Registry entries from a computer. A public version 1.01 for the Mac OS X has been released along with a Network Edition. CCleaner can be employed to uninstall programs. CCleaner allows the alteration of start-up programs, similar to the Microsoft Windows MSConfig utility. Users can disable start-up programs. As of version 2.19.901, CCleaner also allows users to delete system restore points.
  • 22.
  • 23.
  • 24. CCLEANER Developer(s) :Piriform Initial release :23 September 2003; 8 years ago Stable release :3.20.1750 / 25 June 2012; 10 days ago Operating system : Windows 2000 and later Mac OS X 10.5 and later Platform :IA-32 and x64 Available in :47 languages Type :Utility software License :Freemium Website :www.piriform.com/ccleaner
  • 25. OPERATING SYSTEM • Operating System is a software, which makes a computer to actually work. • It is the software the enables all the programs we use. • The OS organizes and controls the hardware. • OS acts as an interface between the application programs and the machine hardware. • Examples: Windows, Linux, Unix and Mac OS, etc.,
  • 26. • Batch processing • Interactive processing • Requires real-time processing • Time-sharing/Multitasking • Implemented by Multiprogramming • Multiprocessor machines Evolution of Shared Computing
  • 29. • Users seeking services from same machine at the same time – time sharing • Implemented using a technique called multiprogramming (time is divided into multiple intervals, execution of one job is limited to a single time interval) • Multiple terminals connected to same machine • Driven by the fact that in the past computers were very expensive • When multiprogramming is applied to single- user environments is usually called multitasking Time Sharing / Multitasking
  • 30. • Provide time sharing/multi-tasking capabilities by assigning different tasks to different processors as well as sharing the time of one single processor • Problems to solve: • Load balancing – dynamically allocating tasks to the various processor so that all of them are used efficiently • Scaling – breaking tasks into sub-tasks compatible with the number of processors available • Trend to develop a network wide operating system rather than networks of individual operating systems Multiprocessor Operating Systems
  • 31. • Used in hand held devices (PDAs), mobile phones, cars, etc… • Limited data storage and power conservation are the big challenges. • Examples: VxWorks, Windows CE (Pocket PC), Palm OS, Symbinan, ThredX, RomDOS, etc… Embedded Operating Systems
  • 32. • Many people are not satisfied with proprietary operating system. • As Linux is a open source operating system, they develop their own kernal and other applications for their system. Open source operating system
  • 33. NEXT GENERATION • In future the microsoft is deciding to develop cloud OS. • They decided to develop Operating System integrated with browser. • Many OS like Google Chrome OS, Firefox OS is coming up.
  • 34. • A compiler is a computer program that transforms source code written in one programming language (the source language), into another programming language (the target language, often having a binary form known as object code). • The history of the compilers takes us to the early 1940’s. COMPILERS
  • 35. • In 1945- Konrad Zuse began work on Plankalkul (Plan Calculus), the first algorithmic programming language, with an aim of creating the theoretical preconditions for the formulation of problems of a general nature. • In 1948- Claude Shannon´s "The Mathematical Theory of Communication" showed engineers how to code data so they could check for accuracy after transmission between computers. • Shannon identified the bit as the fundamental unit of data and, coincidentally, the basic unit of computation. COMPILERS- History
  • 36. • The term compiler was coined by Hopper. • The first compiler was written by Grace Hopper, in 1952, for the A-0 System language. • The A-0 System was a set of instructions that could translate symbolic mathematical code into machine language. COMPILERS- Birth
  • 37. • In 1953- John Backus completed speedcoding for IBM´s 701 computer. Although speedcoding demanded more memory and compute time, it trimmed weeks off of the programming schedule. • One of the first real compilers was the FORTRAN compiler of the late 1950s. COMPILERS- History
  • 38. • During the late 1970s and early 1980s, optimizing compilers continued to improve to the point that all but the most critical portions of general-purpose programs were written in high-level languages. • On the average, the compilers generate better code than most assembly language programmers. This was often because a compiler could make better use of hardware resources such as registers. COMPILERS- History
  • 39. • In 1953- John Backus completed speedcoding for IBM´s 701 computer. Although speedcoding demanded more memory and compute time, it trimmed weeks off of the programming schedule. • ALGOL 58 for Z22 computer. • ALTAC (extended Fortran compiler) was also available on the Philco 2000 COMPILERS- History
  • 40. • Self-hosting Compilers: • A bootstrapping problem: First, such compiler for a language must be compiled either by a compiler written in a different language. • The first self-hosting compiler (excluding assemblers) was written for Lisp by Hart and Levin at MIT in 1962. • They wrote a Lisp compiler in Lisp, testing it inside an existing Lisp interpreter. • Open source compilers. COMPILERS- History
  • 41. Rob Walling- “The Future Of Compilers” (www.softwarebyrob.com/2006/04/27/) • Reaching the point of employing Artificial Intelligence (AI) in an attempt to see the future. • Compilers operate with no a priori knowledge of the code beyond the language syntax definitions. • Determining how a person, file or database is going to interact with an application until it actually happens. • This problem is hard, but not unsolvable. COMPILERS- Future
  • 42. • It started with huge multi-pass designs for COBOL and FORTRAN. • Then we moved into block-structured languages (algol, pascal, and even C). • Then we moved into OOP: C++, Java, .NET. • Some IDEs now use parsers to validate syntax/semantics as programs are entered. • This started with legacy Quickbasic, but QB was using it to do part of compilation as users entered each line (because PCs were slow) CONCLUSION
  • 43. • The former were statically typed, often had manual memory management and powerful optimizing compilers (C, Pascal, Ada). • The later were dynamically (often weakly) typed, interpreted, and were used for scripting and learning (BASIC, AWK, Unix shells). • Today, the distinction is blurred: interpreters became fast enough by using just-in-time compilation (JavaScript, Lua) and compilers got convenient features making them more usable

Editor's Notes

  1. Jobs residing in mass storage wait for execution in a job queue. A queue is a storage organization in which objects are ordered in first in first-out fashion. That is, objects are removed from the queue in the order they arrived.In early operating systems, each job was accompanied by a series of instructions explaining the steps required to prepare the machine for this particular job. Those instructions were written using a system known as JCL (Job Control Language) and stored with the job in the job queue. Major drawback – no interaction once the job has been submitted for execution.
  2. Interactive operating systems allow programs being executed to carry an dialogue with the user through terminals. Terminals – some “dummy” display based typewriters allowing the user to issue commands and receive responses. Today they evolved to complex machines (even stand alone machines).