the development of ms

Upload: govind4792

Post on 07-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 The Development of MS

    1/24

    The development of MS-DOS

    MS-DOS is the most well known operating system, the most commercialised version is that ofMicrosoft, christened "MS-DOS" (there are other versions such as DR-DOS). MS-DOS wascreated in 1981 when it was used on an IBM PC.

    Introduction to the operating system

    DOS, as with any operating system, controls computer activity. It manages operations such asdata flow, display, data entry amongst other various elements that make up a system.

    The role of DOS is to interpret commands that the user enters via the keyboard.These commands allow the following tasks to be executed:

    y file and folder managementy

    disk upgradesy hardware configurationy memory optimisationy program execution

    These commands are typed after the prompt, in the case of MS-DOS (Microsoft DOS, the mostwell known): the drive letter followed by a backslash, for example: A:\ or C:\.

    Command Description

    dir lists the contents of a folder

    cd changes folder

    cd .. parent folder

    md or mkdir creates a new folder

    deltree deletes a folder and all sub-folders

    copy, xcopy copies a file

    move moves a file

    del deletes a file

    type displays the contents of a filetype |more displays file contents page by page, pausing after each page

    help help for the given command

    print prints the given file

    attrib (-/+r, -/+a, -/+s,-/+h)

    changes a file's attributes (- deactivates, + activates, r: read-only, a:archive, s: systeme, h: hidden file)

    format formats the given drive

  • 8/6/2019 The Development of MS

    2/24

    label assigns a drive name to a drive

    ver gives the version number

    Memory is an area where programs are stored and from where they can be executed.

    A PC compatible computer has three types of memory:

    y conventionaly extendedy paged

    The amount of memory present (and available) in a system can be found by running thefollowing command: "mem" (or "mem /c |more" for more detailed information).

    Conventional memory

    conventional memory is that part of memory where programs may load without any specificinstructions. The amount of conventional memory varies from 256 KB to 640 KB (on all recentcomputers: 386, 486, Pentium, etc.).

    The amount of memory available is the memory remaining after DOS has been loaded intomemory (i.e. the operating system, device drivers and all commands loaded from the config.sysand autoexec.bat).

    Extended memory

    Extended memory enables the system to access more memory. This type of memory is availableon computers equipped with a 80286 type processor or higher.

    Programs normally only recognise conventional memory addresses, to access the storage arealocated beyond the 640 KB, programs need specific instructions. A program that manages accessto extended memory, for example it prevents two programs from using the same area of memoryat the same time. This program is called "extended memory manager".

    MS-DOS comes with the standard extended memory manager called HIMEM.SYS(it is alsofound in Windows 98). It is loaded in the config.sys by adding the line:

    DEVICE=path/himem.sys

    where path is the access path to the file.

    Paged memory

  • 8/6/2019 The Development of MS

    3/24

    Another method of accessing memory beyond the first 640 KB is to use paged memory. Someprograms (few nowadays) are optimised to use this type of memory.

    As with extended memory, this type of memory requires a program to manage it, it is called"paged memory manager". Programs designed to use this type of memory cannot access it

    directly: the memory manager must copy sections of 16 KB of memory (called pages) into anarea (called frame segment) located in the high memory area. This type of memory wasdeveloped before extended memory, this memory is thus slower and only allows utilisation ofone limited portion of memory at any given time.

    High memory

    Many systems have 384 KB of high memory (HMA, High Memory Addresses), located directlyafter the 640 KB of conventional memory. This area of memory can be used by hardware. Areasnot used by hardware are called "upper memory blocks" (UMB), they allow programs to be runin paged memory.

    The DOS start-up procedure is defined in the autoexec.batand config.sys files located in the rootof your "C:\" drive. We highly recommend making back up copies of these files beforemodifying them.To deactivate a line of command in either file just place the "rem" (remark) command at thebeginning of the line, there is no need to delete the entire line.

    Config.sys

    The config.sys file is a text file which loads device drivers and defines parameters for MS-DOS.

    y device is used to load device driversy devicehigh loads the driver into the high memory areay dos defines the area of memory where DOS will be loadedy drivparm defines disk drive specificationsy fcbs specifies the number of file control blocksy files specifies the number of files that can be opened at the same timey install runs a resident program (TSR - terminate and stay resident)y lastdrive defines the number of valid disk drivesy shell indicates that another command prompt other than COMMAND.COM should be

    used.y

    stacksspecifies the amount of memory reserved for hardware interrupts

    Autoexec.bat

    The autoexec.batis a batch file (as denoted by the file extension), a text file which contains agroup of commands run one after the other, each command is written on a separate line.Some of the following are examples of commands that can be added to the autoexec.bat (anyprogram that runs in DOS can be added to this file):

  • 8/6/2019 The Development of MS

    4/24

    y thepath command tells MS-DOS the file location where files can be accessed when inanother folder.

    y the prompt command sets the type of MS-DOSprompty the doskey command allows you to use the directional keypad to go back through

    previous commands that have been run.

    Creating a start menu

    In DOS, Windows 95 or Windows 98 systems it is possible to create a start menu where you canselect which devices are to be loaded in DOS and even (as is the case with Windows 95/98) tellthe system to start-up in either Windows or DOS. The config.sys and autoexec.batfiles (and inWindows the msdos.sys file) must be modified to allow the selection of DOS and Windows atstart-up.

    Modifying the config.sys file

    To have the Windows and DOS options on start-up, the config.sys file must be modified asfollows:

    [COMMON]

    FILES=40

    Country=044,850,C:\WINDOWS\COMMAND\country.sys

    [MENU]

    REM *********Start Menu*************************************

    MENUITEM=1, Dos

    MENUITEM=2, Windows 98

    REM ***********OPTIONS*************************************************

    MENUCOLOR=15,0

  • 8/6/2019 The Development of MS

    5/24

    MENUDEFAULT=2 ,4

    [1]

    contents of the config.sys file you wish to use in configuration 1

    [2]

    contents of the config.sys file you wish to use in configuration 2

    explanation of changes made to the config.sys file

    [COMMON] contains file information config.sys which is common to both configuration 1 and2.

    [MENU] contains the titles of the menu items (here DOS and Windows 98) as well as the menusettings:

    y background colour (here 15) and text colour (here 0)y the item (here the 2nd item) is loaded if no item is selected after a set time (here 4

    seconds)

    Then both configurations after the markers [1] and [2]

    modifying the autoexec.batfile

    The autoexec.batfile must be modified as follows:

    goto %config%

    :1

    autoexec.bat file contents for configuration 1

    goto end

  • 8/6/2019 The Development of MS

    6/24

    :2

    autoexec.bat file contents for configuration 2

    win

    goto end

    :end

    (items common to both configurations)

    explanation of changes made to the autoexec.bat file

    The changes made to the autoexec.batfile are not complicated, there are two sections in the filewhich the system will go to as you previously selected in the config.sys (as the system willexecute the config.sys first).

    modifying the msdos.sys file

    If you wish to choose between DOS and Windows you must edit the msdos.sys file. Make sureyou remove the read-only attribute, then add or modify the following lines:

    [Options]

    BootMulti=1

    BootGUI=0

    then add the line "win" to the end of the configuration corresponding to Windows in theautoexec.bat, which will then load Windows if selected.

    iles in MS DOS

  • 8/6/2019 The Development of MS

    7/24

    In a computers data is stored in files. When you run a program, MS-DOS processes the datastored in the file and passes it to the system.In MS-DOS a file can be any size, however the file name is more restricted, it can only have amaximum length of 8 characters plus 3 for the extension.

    Furthermore, the files can only contain the following characters:

    y letters A to Zy numbers 0 to 9y the following special characters: $~! # % & - { } ( ) @ ' _ ^

    Thus filenames must not contain:

    y spacesy commasy backslashy

    dot (apart from the dot that separates the name and the extension)

    nor can they contain any of the following list of reserved names:

    y CLOCK$y CONy AUXy COM1y COM2y COM3y COM4y

    LPT1y LPT2y LPT3y NULy PRN

    Organising files in directories or folders

    Depending on its size a hard drive may contain several thousands of files. However, the morefiles there are, the more difficult it is to manage them, this is when we need to store them indirectories In MS-DOS, directory names are also subject to the same name restrictions as files (8

    characters for the name, and an extension with 3 characters).

    Description of the operating system

  • 8/6/2019 The Development of MS

    8/24

    For a computerto be able to operate a computer programme (sometimes known as applicationorsoftware), the machine must be able to perform a certain number of preparatory operations toensure exchange between theprocessor, the memory and thephysical resources (peripherals).

    The operating system (sometimes referred to by its abbreviation OS), is responsible for creating

    the link between the material resources, the user and the applications (word processor, videogame, etc.). When a programme wants to access a material resource, it does not need to sendspecific information to the peripheral device but it simply sends the information to the operatingsystem, which conveys it to the relevant peripheral via its driver. If there are no drivers, eachprogramme has to recognise and take into account the communication with each type ofperipheral!

    The operating system thus allows the "dissociation" of programmes and hardware, mainly tosimplify resource management and offer the user a simplified Man-machine interface (MMI) toovercome the complexity of the actual machine.

    Roles of the operating system

    The operating system has various roles:

    y Management of the processor: the operating system is responsible for managingallocation of the processor between the different programmes using a schedulingalgorithm. The type of scheduler is totally dependent on the operating system, accordingto the desired objective.

    y Management of the random access memory: the operating system is responsible formanaging the memory space allocated to each application and, where relevant, to each

  • 8/6/2019 The Development of MS

    9/24

    user. If there is insufficient physical memory, the operating system can create a memoryzone on the hard drive, known as "virtual memory". The virtual memory lets you runapplications requiring more memory than there is available RAM on the system.However, this memory is a great deal slower.

    y Management of input/output: the operating system allows unification and control ofaccess of programmes to material resources via drivers (also known as peripheraladministrators or input/output administrators).

    y Management of execution of applications: the operating system is responsible forsmooth execution of applications by allocating the resources required for them to operate.This means an application that is not responding correctly can be "killed".

    y Management of authorisations: the operating system is responsible for security relatingto execution of programmes by guaranteeing that the resources are used only byprogrammes and users with the relevent authorisations.

    y File management: the operating system manages reading and writing in the file systemand the user and application file access authorisations.

    y Information management: the operating system provides a certain number of indicatorsthat can be used to diagnose the correct operation of the machine.

    Components of the operating system

    The operating system comprises a set of software packages that can be used to manageinteractions with the hardware. The following elements are generally included in this set ofsoftware:

    y The kernel, which represents the operating system's basic functions such as managementof memory, processes, files, main inputs/outputs and communication functionalities.

    y The shell, allowing communication with the operating system via a control language,letting the user control the peripherals without knowing the characteristics of thehardware used, management of physical addresses, etc.

    y The file system, allowing files to be recorded in a tree structure.Multi-threaded systems

    An operating system is known as multi-threaded when several "tasks" (also known asprocesses) may be run at the same time.

    The applications consist of a sequence of instructions known as "threads". These threads will bealternately active, on standby, suspended or destroyed, according to the priority accorded to themor may be run simultaneously.

    A system is known as pre-emptive when it has a scheduler (also calledplanner), which,according to priority criteria, allocates the machine time between the various processesrequesting it.

  • 8/6/2019 The Development of MS

    10/24

    The system is called a shared time system when a time quota is allocated to each process by thescheduler. This is the case of multi-user systems which allow several users to use different orsimilar applications on the same machine at the same time. the system is then referred to as a"transactional system". To do this, the system allocates a period of time to each user.

    Multi-processor systems

    Multi-processing is a technique that involves operating several processors in parallel to obtain ahigher calculation power than that obtained using a high-end processor or to increase theavailability of the system (in the event of processor breakdown).

    The term SMP (Symmetric MultiprocessingorSymmetric Multiprocessor) refers to anarchitecture in which all processors access the same shared memory.

    A multiprocessor system must be able to manage memory sharing between several processorsbut also to distribute the work load.

    Embedded systems

    Embedded systems are operating systems designed to operate on small machines, such as PDAs(personal digital assistants) or autonomous electronic devices (spatial probes, robot, on-boardvehicle computer, etc.) with reduced autonomy. Thus an essential feature of embedded systemsis their advanced energy management and ability to operate with limited resources.

    The main "general use" embedded systems for PDAs are as follows:

    yPalmOS

    y Windows CE / Windows Mobile / Window SmartphoneReal time systems

    Real time systems, used mainly in industry, are systems designed to operate in a time-constrained environment. A real time system must also operate reliably according to specifictime constraints; in other words, it must be able to properly process information received atclearly-defined intervals (regular or otherwise).

    Here are some examples of real time operating systems:

    y OS-9;y RTLinux (RealTime Linux);y QNX;y VxWorks.

    Types of operating system

  • 8/6/2019 The Development of MS

    11/24

    There are several types of operating system, defined according to whether they cansimultaneously manage information measuring 16 bits, 32 bits, 64 bits or more.

    System Programming Single user Multi-user Single task Multi-task

    DOS 16 bits X X

    Windows3.1 16/32 bits X not pre-emptive

    Windows95/98/Me 32 bits X cooperative

    WindowsNT/2000 32 bits X pre-emptive

    WindowsXP 32/64 bits X pre-emptive

    Unix / Linux 32/64 bits X pre-emptive

    MAC/OS X 32 bits X pre-emptive

    MS 32 bits X pre-emptive

    Introduction

    The processor (CPU, forCentral Processing Unit) is the computer's brain. It allows theprocessing of numeric data, meaning information entered inbinary form, and the execution ofinstructions stored in memory.

    The first microprocessor (Intel 4004) was invented in 1971. It was a 4-bit calculation devicewith a speed of 108 kHz. Since then, microprocessor power has grown exponentially. So whatexactly are these little pieces of silicone that run our computers?

    Operation

    The processor (called CPU, forCentral Processing Unit) is an electronic circuit that operates atthe speed of an internal clock thanks to a quartz crystal that, when subjected to an electricalcurrant, send pulses, called "peaks". The clock speed (also called cycle), corresponds to thenumber of pulses per second, written in Hertz (Hz). Thus, a 200 MHz computer has a clock thatsends 200,000,000 pulses per second. Clock frequency is generally a multiple of the systemfrequency (FSB,Front-Side Bus), meaning a multiple of the motherboard frequency.

  • 8/6/2019 The Development of MS

    12/24

    With each clock peak, the processor performs an action that corresponds to an instruction or apart thereof. A measure called CPI (Cycles PerInstruction) gives a representation of the averagenumber of clock cycles required for a microprocessor to execute an instruction. Amicroprocessors power can thus be characterized by the number of instructions per secondthat it is capable of processing. MIPS (millions of instructions per second) is the unit used and

    corresponds to the processor frequency divided by the CPI.

    Instructions

    An instruction is an elementary operation that the processor can accomplish. Instructions arestored in the main memory, waiting to be processed by the processor. An instruction has twofields:

    y the operation code, which represents the action that the processor must execute;y the operand code, which defines the parameters of the action. The operand code depends

    on the operation. It can be data or a memory address.

    Operation Code Operand Field

    The number of bits in an instruction varies according to the type of data (between 1 and 4 8-bitbytes).

    Instructions can be grouped by category, of which the main ones are:

    y Memory Access: accessing the memory or transferring data between registers.y Arithmetic Operations: operations such as addition, subtraction, division or

    multiplication.y Logic Operations: operations such as AND, OR, NOT, EXCLUSIVE NOT, etc.y Control: sequence controls, conditional connections, etc.

  • 8/6/2019 The Development of MS

    13/24

    Registers

    When the processor executes instructions, data is temporarily stored in small, local memorylocations of 8, 16, 32 or 64 bits called registers. Depending on the type of processor, the overallnumber of registers can vary from about ten to many hundreds.

    The main registers are:

    y the accumulator register (ACC), which stores the results of arithmetic and logicaloperations;

    y the status register (PSW,Processor Status Word), which holds system status indicators(carry digits, overflow, etc.);

    y the instruction register (RI), which contains the current instruction being processed;y the ordinal counter (OCorPCforProgram Counter), which contains the address of the

    next instruction to process;y the buffer register, which temporarily stores data from the memory.

    Cache Memory

    Cache memory (also called buffer memory) is local memory that reduces waiting times forinformation stored in the RAM (Random Access Memory). In effect, the computer's mainmemory is slower than that of the processor. There are, however, types of memory that are muchfaster, but which have a greatly increased cost. The solution is therefore to include this type oflocal memory close to the processor and to temporarily store the primary data to be processed in

    it. Recent model computers have many different levels of cache memory:

    y Level one cache memory (called L1Cache, forLevel 1Cache) is directly integratedinto the processor. It is subdivided into two parts:

    o the first part is the instruction cache, which contains instructions from the RAMthat have been decoded as they came across the pipelines.

    o the second part is the data cache, which contains data from the RAM and datarecently used during processor operations.

    Level 1 caches can be accessed very rapidly. Access waiting time approaches that of internal

    processor registers.

    y Level two cache memory (called L2Cache, forLevel 2Cache) is located in the casealong with the processor (in the chip). The level two cache is an intermediary between theprocessor, with its internal cache, and the RAM. It can be accessed more rapidly than theRAM, but less rapidly than the level one cache.

    y Level three cache memory (called L3Cache, forLevel 3Cache) is located on themotherboard.

  • 8/6/2019 The Development of MS

    14/24

    All these levels of cache reduce the latency time of various memory types when processing ortransferring information. While the processor works, the level one cache controller can interfacewith the level two controller to transfer information without impeding the processor. As well, thelevel two cache interfaces with the RAM (level three cache) to allow transfers without impeding

    normal processor operation.

    Control Signals

    Control signals are electronic signals that orchestrate the various processor units participating inthe execution of an instruction. Control signals are sent using an element called asequencer. Forexample, theRead / Write signal allows the memory to be told that the processor wants to read orwrite information.

    Functional Units

    The processor is made up of a group of interrelated units (or control units). Microprocessorarchitecture varies considerably from one design to another, but the main elements of amicroprocessor are as follows:

    y A control unit that links the incoming data, decodes it, and sends it to the executionunit:The control unit is made up of the following elements:

    o sequencer (ormonitor and logic unit) that synchronizes instruction executionwith the clock speed. It also sends control signals;

    o ordinal counter that contains the address of the instruction currently beingexecuted;

    oinstruction register that contains the following instruction.

    y An execution unit (orprocessing unit) that accomplishes tasks assigned to it by theinstruction unit. The execution unit is made of the following elements:

    o The arithmetical and logic unit (written ALU). The ALU performs basicarithmetical calculations and logic functions (AND, OR, EXCLUSIVE OR, etc.);

    o The floating point unit (written FPU) that performs partial complex calculationswhich cannot be done by the arithmetical and logic unit.

    o The status register;o The accumulator register.

    y A bus management unit (orinput-output unit) that manages the flow of incoming andoutgoing information and that interfaces with system RAM;

    The diagram below gives a simplified representation of the elements that make up the processor(the physical layout of the elements is different than their actual layout):

  • 8/6/2019 The Development of MS

    15/24

    The Role of Memory

    The term "memory" applies to any electronic component capable of temporarily storing data.

    There are two main categories of memories:

    y internal memory that temporarily memorises data while programs are running. Internalmemory uses microconductors, i.e. fast specialised electronic circuits. Internal memory

    corresponds to what we call random access memory (RAM).

    y auxiliary memory (also calledphysical memoryor external memory) that stores informationover the long term, including after the computer is turned off. Auxiliary memory corresponds to

    magnetic storage devices such as the hard drive, optical storage devices such as CD-ROMs and

    DVD-ROMs, as well as read-only memories.

    Technical Characteristics

    The main characteristics of a memory are:

    y Capacity, representing the global volume of information (in bits) that the memory can storey Access time, corresponding to the time interval between the read/write request and the

    availability of the data

    y Cycle time, representing the minimum time interval between two successive accessesy Throughput, which defines the volume of information exchanged per unit of time, expressed in

    bits per second

    y Non-volatility, which characterises the ability of a memory to store data when it is not beingsupplied with electricity

    The ideal memory has a large capacity with restricted access time and cycle time, a highthroughput and is non-volatile.

    However, fast memories are also the most expensive. This is why memories that use differenttechnologies are used in a computer, interfaced with each other and organised hierarchically.

  • 8/6/2019 The Development of MS

    16/24

    The fastest memories are located in small numbers close to the processor. Auxiliary memories,which are not as fast, are used to store information permanently.

    Types of Memories

    Random Access Memory

    Random access memory, generally called RAM is the system's main memory, i.e. it is a spacethat allows you to temporarily store data when a program is running.

    Unlike data storage on an auxiliary memory such as a hard drive, RAM is volatile, meaning thatit only stores data as long as it supplied with electricity. Thus, each time the computer is turnedoff, all the data in the memory are irremediably erased.

    Read-Only Memory

    Read-only memory, called ROM, is a type of memory that allows you to keep the informationcontained on it even when the memory is no longer receiving electricity. Basically, this type ofmemory only has read-only access. However, it is possible to save information in some types ofROMmemory.

    Flash Memory

    Flash memory is a compromise between RAM-type memories and ROM memories. Flash

    memory possesses the non-volatility of ROM memories while providing both read and writeaccess However, the access times of flash memories are longer than the access times of RAM.

  • 8/6/2019 The Development of MS

    17/24

    Transistor

    To process information, the microprocessor has a group of instructions, called the "instructionset", made possible by electronic circuits. More precisely, the instruction set is made with thehelp of semiconductors, little "circuit switches" that use the transistor effect, discovered in 1947byJohn Barden, WalterH. Brattain and William Shockley who received a Nobel Prize in 1956for it.

    A transistor (the contraction oftransfer resistor) is an electronic semi-conductor componentthat has three electrodes and is capable of modifying current passing through it using one of itselectrodes (called control electrode). These are referred to as "active components", in contrast to"passive components", such as resistance or capacitors which only have two electrodes (referredto as being "bipolar").

    A MOS (metal, oxide, silicone) transistor is the most common type of transistor used to designintegrated circuits. MOS transistors have two negatively charged areas, respectively calledsource (which has an almost zero charge) and drain (which has a 5V charge), separated by apositively charged region, called a substrate). The substrate has a control electrode overlaid,called a gate, that allows a charge to be applied to the substrate.

  • 8/6/2019 The Development of MS

    18/24

    When there is no charge on the control electrode, the positively charged substrate acts as abarrier and prevents electron movement from the source to the drain. However, when a charge is

    applied to the gate, the positive charges of the substrate are repelled and a negatively chargedcommunication channel is opened between the source and the drain.

    The transistor therefore acts as a programmable switch, thanks to the control electrode. When acharge is applied to the control electrode, it acts as a closed interrupter and, when there is nocharge, it acts as an open interrupter.

    Integrated Circuits

    Once combined, transistors can make logic circuits, that, when combined, form processors. Thefirst integrated circuit dates back to 1958 and was built by Texas Instruments.

    MOS transistors are therefore made of slices of silicone (called wafers) obtained after multipleprocesses. These slices of silicone are cut into rectangular elements to form a "circuit". Circuitsare then placed in cases with input-output connectors and the sum of these parts makes an"integrated circuit". The minuteness of the engraving, written in microns (micrometers, written

  • 8/6/2019 The Development of MS

    19/24

    m) defines the number of transistors per surface unit. There can be millions of transistors onone single processor.

    Moore's Law, penned in 1965 by Gordon E. Moore, cofounder of Intel, predicted that processorperformance (by extension of the number of transistors integrated in the silicone) would double

    every twelve months. This law was revised in 1975, bringing the number of months to 18.Moores Law is still being proven today.

    Because the rectangular case contains input-output pins that resemble legs, the term "electronicflea" is used in French to refer to integrated circuits.

    Families

    Each type of processor has its own instruction set. Processors are grouped into the followingfamilies, according to their unique instruction sets:

    y 80x86: the "x" represents the family. Mention is therefore made to 386, 486, 586, 686,etc.

    y ARMy IA-64y MIPSy Motorola 6800y PowerPCy SPARCy ...

    This explains why a program produced for a certain type of processor can only work directly ona system with another type of processor if there is instruction translation, called emulation. Theterm "emulator" is used to refer to the program performing this translation.

    Instruction Set

    An instruction set is the sum of basic operations that a processor can accomplish. Aprocessors instruction set is a determining factor in its architecture, even though the same

    architecture can lead to different implementations by different manufacturers.

    The processor works efficiently thanks to a limited number of instructions, hardwired to theelectronic circuits. Most operations can be performed using basic functions. Some architecturedoes, however, include advanced processor functions.

    CISC Architecture

  • 8/6/2019 The Development of MS

    20/24

    CISC (Complex Instruction SetComputer) architecture means hardwiring the processor withcomplex instructions that are difficult to create using basic instructions.

    CISC is especially popular in 80x86 type processors. This type of architecture has an elevatedcost because of advanced functions printed on the silicone.

    Instructions are of variable length and may sometimes require more than one clock cycle.Because CISC-based processors can only process one instruction at a time, the processing time isa function of the size of the instruction.

    RISC Architecture

    Processors with RISC (ReducedInstruction SetComputer) technology do not have hardwired,advanced functions.

    Programs must therefore be translated into simple instructions which complicates development

    and/or requires a more powerful processor. Such architecture has a reduced production costcompared to CISC processors. In addition, instructions, simple in nature, are executed in just oneclock cycle, which speeds up program execution when compared to CISC processors. Finally,these processors can handle multiple instructions simultaneously by processing them in parallel.

    Technological Improvements

    Throughout time, microprocessor manufacturers (calledfounders) have developed a certainnumber of improvements that optimize processor performance.

    Parallel Processing

    Parallel processing consists of simultaneously executing instructions from the same program ondifferent processors. This involves dividing a program into multiple processes handled in parallelin order to reduce execution time.

    This type of technology, however, requires synchronization and communication between thevarious processes, like the division of tasks in a business: work is divided into small discreteprocesses which are then handled by different departments. The operation of an enterprise maybe greatly affected when communication between the services does not work correctly.

    Pipelining

    Pipelining is technology that improves instruction execution speed by putting the steps intoparallel.

  • 8/6/2019 The Development of MS

    21/24

    To understand the pipelines mechanism, it is first necessary to understand the executionphases of an instruction. Execution phases of an instruction for a processor with a 5-step"classic" pipeline are as follows:

    y FETCH: (retrieves the instruction from the cache;y

    DEC

    ODE

    : decodes the instruction and looks for operands (register or immediatevalues);y EXECUTE:performs the instruction (for example, if it is an ADD instruction, addition

    is performed, if it is a SUB instruction, subtraction is performed, etc.);y MEMORY: accesses the memory, and writes data or retrieves data from it;y WRITE BACK(retire): records the calculated value in a register.

    Instructions are organized into lines in the memory and are loaded one after the other.

    Thanks to the pipeline, instruction processing requires no more than the five preceding steps.Because the order of the steps is invariable (FETCH, DECODE, EXECUTE, MEMORY,WRITE BACK), it is possible to create specialized circuits in the processor for each one.

    The goal of the pipeline is to perform each step in parallel with the preceding and followingsteps, meaning reading an instruction (FETCH) while the previous step is being read(DECODE), while the step before that is being executed (EXECUTE), while the step before thatis being written to the memory (MEMORY), and while the first step in the series is beingrecorded in a register (WRITE BACK).

    In general, 1 to 2 clock cycles (rarely more) for each pipeline step or a maximum of 10 clockcycles per instruction should be planned for. For two instructions, a maximum of 12 clock cyclesare necessary (10+2=12 instead of 10*2=20) because the preceding instruction was already in thepipeline. Both instructions are therefore being simultaneously processed, but with a delay of 1 or2 clock cycles. For 3 instructions, 14 clock cycles are required, etc.

    The principle of a pipeline may be compared to a car assembly line. The car moves from oneworkstation to another by following the assembly line and is completely finished by the time itleaves the factory. To completely understand the principle, the assembly line must be looked at

  • 8/6/2019 The Development of MS

    22/24

    as a whole, and not vehicle by vehicle. Three hours are required to produce each vehicle, but oneis produced every minute!

    It must be noted that there are many different types of pipelines, varying from 2 to 40 steps, butthe principle remains the same.

    Superscaling

    Superscaling consists of placing multiple processing units in parallel in order to processmultiple instructions per cycle.

    HyperThreading

    HyperThreading (written HT) technology consists of placing two logic processors with aphysical processor. Thus, the system recognizes two physical processors and behaves like a

    multitasking system by sending two simultaneous threads, referred to as SMT (SimultaneousMulti Threading). This "deception" allows processor resources to be better employed byguaranteeing the bulk shipment of data to the processor.

  • 8/6/2019 The Development of MS

    23/24

    Introduction to the Concept of the Computer

    Understanding computervocabulary is the main difficulty that potential personal computer

    buyers face. Unlike buying a TV, a task for which the decision-making criteria are limited,choosing a computer requires choosing each of its components and knowing their characteristics.The purpose of this document is not to make sense of all the computer abbreviations (becauseeach manufacturer has their own technologies) but rather to profile the main components of acomputer, explain how they work and outline their main characteristics.

    Presentation of the Computer

    A computer is a set of electronic circuits that allow for data to be manipulated in binary form,i.e. inbits.

    Types ofComputers

    Any machine capable of manipulating binary information can be considered a computer.However, the term "computer" is sometimes confused with the termpersonal computer(PC),which is the type of computer that is most commonly found on the market. And yet there aremany other types of computers (the following is not an exhaustive list):

    y Amigay Atariy Apple Macintoshy Alpha stationsy SUN stationsy Silicon Graphics stations

    The rest of this document, as generic as it might be, applies particularly toPCtype computers.They are also called IBM-compatible computers because IBM is the company that created thefirst of these computers models and was for a long time (until 1987) the leader in this area, somuch so that they controlled the standards, which were copied by other manufacturers.

    Make-up of a Computer

    A computer is a collection of modular electronic components, i.e. components that can bereplaced by other components that may have different characteristics that are capable of runningcomputer programs. Thus, the term "hardware" refers to all the material elements of a computerand "software" refers to the program parts.

  • 8/6/2019 The Development of MS

    24/24

    The material components of the computer are structured around a main board that is made up ofa few integrated circuits and many electronic components such as capacitors, resistors, etc. Allthese components are fused to the board and are linked by circuit board connections and by alarge number of connectors. This board is called the motherboard.

    The motherboard is housed in a casing (orframe) that comprises slots for memory peripherals onthe front, buttons that allow you to switch the computer on and off, as well as a certain numberof indicator lights that allow you to verify the computer's operating state and the activity of thehard drives. On the back, the casing has openings facing the expansion boards and the I/Ointerfaces, which are connected to the motherboard.

    Finally, the casing houses an electrical power supply (commonly called thepower), which is incharge of providing a stable and continuous electrical current to all of the elements that make upthe computer. The power supply converts alternating current from the power grid (220 or 110volts) into a direct voltage of 5 volts for the computer components and 12 volts for some internalperipherals (drives, CD-ROM drives, etc.). How powerful the electrical supply is determines

    how many peripherals the computer is capable of supplying. The power supply is generallybetween 200 and 450 Watts.

    The "central processing unit" includes the casing and all the elements it contains. The externalelements of the central processing unit are called peripherals.

    The central processing unit must be connected to a whole set of external peripherals. A computergenerally comprises at least the central processing unit, a screen (monitor), a keyboard and amouse, but it is possible to connect a wide range of peripherals on the I/O interfaces (serial ports,parallel ports, USB ports, FireWire ports, etc.):

    yaprinter

    y a scannery an external sound cardy an external hard drivey an external storage peripheraly a digital camera or video cameray a PDAy etc.