ed01-1011-71380142---------------------enterprise computing

Upload: m-saad-iqbal

Post on 07-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    1/14

    Enterprise Computing

    Question 1

    Hierarchy of Microprocessors

    There are many levels of abstraction through which a designer passes when implementing

    a microprocessor chip set or system. He usually begins by configuring the application for the

    microprocessor, bus, and peripherals (memory, etc.). Section at a time, he expands the system

    components into a Register Transfer level diagram, followed by a detailed chip or gate

    description.

    To handle the speed mismatch between processors and DRAM, these chips are likely to

    associate a non-trivial memory hierarchy to each DRAM bank. In this paper, we assume a per-

    bank baseline memory hierarchy as in Figure 1-(b). In the figure, the instruction memory

    hierarchy includes a fast SRAM memory. The data memory hierarchy includes a cache with

    hardware sequential prefetch of 1 line. The DRAM bank itself is sub-banked and has row and

    data buffers. For example, Figure 1-(c) shows the DRAM organized into 8 sub-banks, with 10

    row buffers, and 2 256-bit data buffers. Unlike in memory-only chips, where the DRAM

    organization is often limited to standard designs, embedded systems allow many different

    organizations for the DRAM array. For example, designers can change the width and length of a

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    2/14

    DRAM sub-bank, and the number of sub-banks. These changes can affect the performance

    delivered and the energy consumed by DRAM accesses, and the area utilized.

    Features

    Microprocessors make it possible to put a computer into thousands of items that were

    traditionally not computer-related. These include large and small household appliances, cars (and

    their accessory equipment units), car keys, tools and test instruments, toys, light

    switches/dimmers and electrical circuit breakers, smoke alarms, battery packs, and hi-fi

    audio/visual components (from DVD players to phonograph turntables.) Such products as

    cellular telephones, DVD video system and ATSC HDTV broadcast system fundamentally

    require consumer devices with powerful, low-cost, microprocessors. Increasingly stringent

    pollution control standards effectively require automobile manufacturers to use microprocessor

    engine management systems, to allow optimal control of emissions over widely varying

    operating conditions of an automobile. Non-programmable controls would require complex,

    bulky, or costly implementation to achieve the results possible with a microprocessor.

    A microprocessor control program can be easily tailored to different needs of a product

    line, allowing upgrades in performance with minimal redesign of the product. Different features

    can be implemented in different models of a product line at negligible production cost.

    Microprocessor control of a system can provide control strategies that would be

    impractical to implement using electromechanical controls or purpose-built electronic controls.

    For example, an engine control system in an automobile can adjust ignition timing based on

    engine speed, load on the engine, ambient temperature, and any observed tendency for knocking

    - allowing an automobile to operate on a range of fuel grades.

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    3/14

    System Integrated With Microsofts Windows Operating System

    The System i55 Servers have the ability to manage Intel-based Windows servers via the

    Integrated xSeries Servers on the Integrated x Series Adapter. These systems can support up to

    60 Integrated xSeries Servers. They also support the attachment of external 1-way to 8-way IBM

    @server xSeries servers via the high-speed link. Using the Integrated xSeries Adapter, selected

    xSeries servers running a Windows Server can extend Windows application scalability while

    retaining the same storage consolidation and system management advantages of the Integrated

    xSeries Server has on the System i55. The virtual storage management feature also enables the

    administrator to dynamically add storage to a running Windows Server.

    Cross-Site Mirroring

    Cross-site mirroring (XSM) also called geographical mirroring, enables the mirroring of

    data on disks at sites which can be separated by a significant geographical distance. This

    technology can be used to extend the functionality of a device cluster resource group (CRG)

    beyond the limits of a physical component connection.

    Cross-site mirroring provides the ability for the replication of changes made to the

    production copy on an independent disk pool to the mirror copy of that disk pool. As the data is

    being written to the production copy, the operating system mirrors that data to its second copy on

    another system. Due to this, the multiple copies of data remain identical so that if a failover or

    switchover occurs through the device CDR, the backup node can seamlessly take the role of

    primary. When a primary server outage occurs and a failover or switchover is initiated, the node

    designated as the backup node in the recovery domain, becomes the primary access point for the

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    4/14

    resource and then owns the production copy of the independent disk pool. In this way, protection

    from single point of failure is achieved.

    Question 2

    Business Continuity

    Business continuity is the activity performed by an organization to ensure that critical

    business functions will be available to customers, suppliers, regulators, and other entities that

    must have access to those functions. These activities include many daily chores such as project

    management, system backups, change control, and help desk. Business continuity is not

    something implemented at the time of a disaster; Business Continuity refers to those activities

    performed daily to maintain service, consistency, and recoverability.

    Communication and Networking

    Communication and networking skills are very important in career development. Great

    careers do not happen accidentally, it requires persistence, introspection, with the right people to

    achieve this. Most people would benefit from knowing more about career development and the

    skills that one can employ to ensure that they are developing their career at a pace that is

    acceptable to them. Career development is not a one time thing that one does; it is a lengthy

    process that requires one to set milestones for each stage that they are in with regards to their

    career.

    Effective communication skills form the heart of networking as well as career success.

    Most employers look for strong communication skills in their potential employees. Being able to

    communicate with clients, co-workers and upper management is of utmost importance. One has

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    5/14

    to be able to convey their thoughts if the job is to be done properly; ideas that are stuck in your

    mind are of no use to anyone even to yourself. Often, you will find that people that are promoted

    in the various jobs are not usually promoted because of the technical skills that they possess but

    because of the communication and networking skills that they possess.

    System i5 Clustering

    Clustering is about physically and logically coupling computer systems together to

    accomplish one or more of three basic things: workload distribution, high availability, and

    scalability. A cluster can be as simple as a topology designed to accomplish data resilience with

    little consideration given to the operating system or application, or it can be as sophisticated as

    an implementation that accomplishes data resilience, application resilience, and workload

    distribution all within a concept called a single-system image. For years, the iSeries 400 has

    supported the simple topology of high-availability clustering for data resilience, but things have

    changed.

    Question 3

    DEBUG

    Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a

    computer program or a piece of electronic hardware, thus making it behave as expected.

    Debugging tends to be harder when various subsystems are tightly coupled, as changes in one

    may cause bugs to emerge in another. Many books have been written about debugging (see

    below: Further reading), as it involves numerous aspects, including: interactive debugging,

    control flow, integration testing, log files, monitoring (application, system), memory dumps,

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    6/14

    profiling, Statistical Process Control, and special design tactics to improve detection while

    simplifying changes.

    Breakpoint

    A breakpoint tells the debugger that an application should break (pause execution) at a

    certain point or when a certain condition occurs. When a break occurs, your program and the

    debugger are said to be in break mode. For more information, see Breaking Execution. The

    Visual Studio debugger has four types of breakpoints:

    A function breakpoint causes the program to break when execution reaches a specified

    location within a specified function.

    A file breakpoint causes the program to break when execution reaches a specified

    location within a specified file.

    An address breakpoint causes the program to break when execution reaches a specified

    memory address.

    A data breakpoint causes the program to break when the value of a variable changes. You

    can set a data breakpoint on a global variable or a local variable in the top-most scope of

    a function. (C++ only)

    To provide greater power and flexibility, you can modify the behavior of a breakpoint by

    adding these properties:

    A Hit Count property, which determines how many times a breakpoint must be hit before

    execution breaks. (By default, execution breaks every time a breakpoint is hit.) For more

    information, see Hit Count.

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    7/14

    A Condition, which is an expression that determines whether the breakpoint is hit or

    skipped.

    Interactive Debugging

    A recursive debugging REPL exposes a number of other meta-commands that inspect the

    state of the computation at the time of the error. These commands allow you to

    display the Scheme call stack at the point where the error occurred;

    move up and down the call stack, to see in detail the expression being evaluated, or the

    procedure being applied, in eachframe; and

    examine the values of variables and expressions in the context of each frame.

    ISBD and its Commands

    ISBD is used throughout the system as a prime display format for bibliographic details.

    ISBD may be explicitly invoked as part of the cataloguing process and also may be invoked from

    the Aurora Explorer command panel as the summary display:

    Question 4

    CL Language General Capabilities

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    8/14

    C (pronounced like the letter C) is a general-purpose computer programming language

    developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use

    with the Unix operating system.

    C is an imperative (procedural) systems implementation language. It was designed to be

    compiled using a relatively straightforward compiler, to provide low-level access to memory, to

    provide language constructs that map efficiently to machine instructions, and to require minimal

    run-time support. C was therefore useful for many applications that had formerly been coded in

    assembly language. Despite its low-level capabilities, the language was designed to encourage

    cross-platform programming. A standards-compliant and portably written C program can be

    compiled for a very wide variety of computer platforms and operating systems with few changes

    to its source code. The language has become available on a very wide range of platforms, from

    embedded microcontrollers to supercomputers.

    CL Command Construction

    A command file is a text file that contains options and filenames you would otherwise

    type on the command line or specify using the CL environment variable. CL accepts a compiler

    command file as an argument in the CL environment variable or on the command line. Unlike

    either the command line or the CL environment variable, a command file allows you to use

    multiple lines of options and filenames.

    Options and filenames in a command file are processed according to the location of a command

    filename within the CL environment variable or on the command line. However, if the /link

    option appears in the command file, all options on the rest of the line are passed to the linker.

    Options in subsequent lines in the command file and options on the command line after the

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    9/14

    command file invocation are still accepted as compiler options. For more information on how the

    order of options affects their interpretation, see Order of CL Options. A command file must not

    contain the CL command. Each option must begin and end on the same line; you cannot use the

    backslash (\) to combine an option across two lines. A command file is specified by an at sign

    (@) followed by a filename; the filename can specify an absolute or relative path.

    Major CL Command Categories

    Following are the major CL command categories:

    Advanced Job Scheduler for iSeries commands

    AFP Utilities for iSeries commands

    Backup Recovery and Media Services for iSeries commands

    Business Graphics Utility for AS/400 commands

    CICS Transaction Server for iSeries commands

    Communications Utilities for iSeries commands

    Content Manager OnDemand for iSeries commands

    Cryptographic Support for AS/400 commands

    DB2 DataPropagator for iSeries, V8.1 commands

    DB2 Query Manager and SQL Development Kit for iSeries commands

    Developer Kit for Java commands

    HTTP Server for iSeries commands

    Infoprint Server for iSeries commands

    IBM eServer iSeries Access for Web commands

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    10/14

    i5/OS commands

    Managed System Services for iSeries commands

    Performance Tools for iSeries commands

    Query for iSeries commands

    System Manager for iSeries commands

    TCP/IP Connectivity Utilities for iSeries commands

    WebSphere Development Studio commands

    Job Descriptions, Printing and Spooling

    From the Installation Description menu, select Print Spool Description to display this

    screen:

    Specify the following options:

    Spool printers:

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    11/14

    Specify the number of printers serviced by the print spool. From 0-8 printers may be

    specified. These printers display at the top of the Print Spool screen during operation.

    The default number of Spool printers is 0, meaning the spool feature is not used. You

    must define at least 1 Spool printer in order to use the print spool.

    Spool printers act as filters. They route files from the spool directory to PC printers based

    on preset selection criteria. On the Assign Devices menu, Spool printers are named SPOOL1

    through SPOOL8. Assignment of Spool printers to destination devices is discussed in a later

    step.

    Performance Tuning: If you are not using the print spool function, leave the number of

    Spool printers at 0. This frees memory buffers which can be used by other program features.

    SPOOL directory:

    A DOS directory is used as the print queue for spooling. This directory is automatically

    created the first time you run the software. The spool directory name displays as SPOOL in the

    list of Destination choices under Assign Devices, regardless of what name you assign the

    directory.

    The following screen shows what the Print Spool screen looks like if you choose Form to

    control spool printing:

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    12/14

    If you choose FCB to control spool printing, FCB displays instead of Form. Display FCB|

    Form name on spool control screen?

    This option allows you to display both the Form name and FCB name on the Print Spool

    screen. The PC operator may find it useful to see both names. However, only the name specified

    by the previous option, FCB/Form name is used to control spool, controls printing.

    The display name appears on the Print Spool screen in the first column, immediately

    before the file name. This location is also referred to as the display column. The heading for the

    display column will match your selection.

    No Default. Only the name specified with the option FCB|Form name is used to control

    spool displays on the Print Spool screen.

    Yes Both the Form name and FCB name display on the Print Spool screen. If you select

    Form name is used to control spool, then FCB is used for the display column. If you select FCB

    name is used to control spool, then Form is used for the display column.

    For example, if you select Form name is used to control spool and set Display FCB name

    on spool control screen? to Yes, the Print Spool screen looks like this:

    The FCB name appears in the display column. When the job begins to print, the Spool

    printer name displays in place of the file State. Tips for entering sort criteria

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    13/14

    Use the RIGHT ARROW key to move between the sort variables.

    Use the PLUS SIGN on the keypad to select one of the following attributes: Prty, Class,

    File, Size, Form, Date, or Time.

    Set any unused variables to blank.

    The default Prty >, Date indicates ascending order and < indicates

    descending order.

    VariableName

    MeansSort by Sort Order

    Prty> Priority highest to lowestPrty< Priority lowest to highest

    Class File class lowest to highest

    File File name alphanumerically

    Size> File size largest to smallest

    Size< File size smallest to largest

    Form Form name alphanumerically

    Date< Date oldest to newest

    Time< Time oldest to newest

    Date> Date newest to oldest

    Time> Time newest to oldest

    (blank) Variable not

    used

    __

  • 8/3/2019 ED01-1011-71380142---------------------Enterprise Computing

    14/14

    References

    David J. Agans:Debugging: The Nine Indispensable Rules for Finding Even the Most Elusive

    Software and Hardware Problems, AMACOM, 2002.

    Bill Blunden: Software Exorcism: A Handbook for Debugging and Optimizing Legacy Code ,

    APress, 2003.

    Ann R. Ford, Toby J. Teorey:Practical Debugging in C++, Prentice Hall, 2002.

    Thorsten Grtker, Ulrich Holtmann, Holger Keding, Markus Wloka, The Developer's Guide to

    Debugging, Springer, 2008.

    Robert C. Metzger:Debugging by Thinking : A Multidisciplinary Approach, Digital Press, 2003.

    Glenford J Myers: *The Art of Software Testing, John Wiley & Sons inc, 2004.

    John Robbins:Debugging Applications, Microsoft Press, 2000.

    Matthew A. Telles, Yuan Hsieh: The Science of Debugging, The Coriolis Group, 2001.

    Dmitry Vostokov: Memory Dump Analysis Anthology, Volume 1, OpenTask, 2008.

    Andreas Zeller: Why Programs Fail: A Guide to Systematic Debugging, Morgan Kaufmann,

    2005.

    Artzi, Shay; Adam Kiezun, Julian Dolby, Frank Tip, Danny Dig, Amit Paradkar, Michael D.

    Ernst (2008).Finding bugs in dynamic web applications. p. 261.