Saturday, 16 August 2014

java features

Simple

  • Looks familiar to existing programmers: related to C and C++:
  • Omits many rarely used, poorly understood, confusing features of C++, like operator overloading, multiple inheritance, automatic coercions, etc.
  • Contains no goto statement, but break and continue
  • Has no header files and eliminated C preprocessor
  • Eliminates much redundancy (e.g. no structs, unions, or functions)
  • has no pointers
  • Added features to simplify:
  • Garbage collection, so the programmer won't have to worry about storage management, which leads to fewer bugs.
  • A rich predefined class library

  • Object-Oriented

    Java is an object-oriented language, which means that you focus on the data in your application and methods that manipulate that data, rather than thinking strictly in terms of procedures.
    In an object-oriented system, a class is a collection of data and methods that operate on that data. Taken together, the data and methods describe the state and behavior of an object. Classes are arranged in a hierarchy, so that a subclass can inherit behavior from its superclass.
    Java comes with an extensive set of classes, arranged in packages, that you can use in your programs.

    Distributed

  • It has a spring-like transparent RPC system
  • Now uses mostly tcp-ip based protocols like ftp & http
  • Java supports various levels of network connectivity through classes in the java.net package (e.g. the URL class allows a Java application to open and access remote objects on the internet).

    Interpreted

    The Java compiler generates byte-codes, rather than native machine code. To actually run a Java program, you use the Java interpreter to execute the compiled byte-codes. Java byte-codes provide an architecture-neutral object file format. The code is designed to transport programs efficiently to multiple platforms.

  • rapid turn-around development
  • Software author is protected, since binary byte streams are downloaded and not the source code

  • Robust

    Java has been designed for writing highly reliable or robust software:
  • language restrictions (e.g. no pointer arithmetic and real arrays) to make it impossible for applications to smash memory (e.g overwriting memory and corrupting data)
  • Java does automatic garbage collection, which prevents memory leaks
  • extensive compile-time checking so bugs can be found early; this is repeated at runtime for flexibilty and to check consistency

  • Secure

    Security is an important concern, since Java is meant to be used in networked environments. Without some assurance of security, you certainly wouldn't want to download an applet from a random site on the net and let it run on your computer. Java's memory allocation model is one of its main defenses against malicious code (e.g can't cast integers to pointers, so can't forge access). Furthermore:
  • access restrictions are enforced (public, private)
  • byte codes are verified, which copes with the threat of a hostile compiler

  • Architecture-Neutral

  • compiler generates bytecodes, which have nothing to do with a particular computer architecture
  • easy to interpret on any machine

  • Portable

    Java goes further than just being architecture-neutral:
  • no "implementation dependent" notes in the spec (arithmetic and evaluation order)
  • standard libraries hide system differences
  • the Java environment itself is also portable: the portability boundary is POSIX compliant

  • High-Performance

    Java is an interpreted language, so it will never be as fast as a compiled language as C or C++. In fact, it is about 20 times as slow as C. However, this speed is more than enough to run interactive, GUI and network-based applications, where the application is often idle, waiting for the user to do something, or waiting for data from the network.

    Multithreaded

    Java allows multiple concurrent threads of execution to be active at once. This means that you could be listening to an audio clip while scrolling the page and in the background downloading an image. Java contains sophisticated synchronization primitives (monitors and condition variables), that are integrated into the language to make them easy to use and robust. The java.lang package provides a Thread class that supports methods to start, run, and stop a thread, and check on its status.

    Dynamic

    Java was designed to adapt to an evolving environment:

  • Even after binaries have been released, they can adapt to a changing environment
  • Java loads in classes as they are needed, even from across the network
  • It defers many decisions (like object layout) to runtime, which solves many of the version problems that C++ has



  • Dynamic linking is the only kind there is
  • Monday, 21 July 2014

    Object-oriented programming

    features of oop

    FEATURES OF OOP:
    1. Object
    2. Class
    3. Data Hiding and Encapsulation
    4. Dynamic Binding
    5. Message Passing
    6. Inheritance
    7. Polymorphism                                                                                                                                     OBJECT: Object is a collection of number of entities. Objects take up space in the memory. Objects are instances of classes. When a program is executed , the objects interact by sending messages to one another. Each object contain data and code to manipulate the data. Objects can interact without having know details of each others data or code.                                                                                                POLYMORPHISM: A greek term means ability to take more than one form. An operation may exhibite different behaviours in different instances. The behaviour depends upon the types of data used in the operation.
      Example:
      • Operator Overloading 
      • Function Overloading                                                                                                                         CLASS: Class is a collection of objects of similar type. Objects are variables of the type class. Once a class has been defined, we can create any number of objects belonging to that class. Eg: grapes bannans and orange are the member of class fruit.
        Example:
        Fruit orange;
        In the above statement object mango is created which belong to the class fruit.
        NOTE: Classes are user define data types.                                                                                        INHERITANCE: it is the process by which object of one class aquire the properties or features of objects of another class. The concept of inheritance provide the idea of reusability means we can add additional features to an existing class without Modifying it. This is possible by driving a new class from the existing one. The new class will have the combined features of both the classes.
        Example:  Robine is a part of the class flying bird which is again a part of the class bird.                       DATA ABSTRACTION AND ENCAPSULATION:
        Combining data and functions into a single unit called class and the process is known as Encapsulation.Data encapsulation is important feature of a class. Class contains both data and functions. Data is not accessible from the outside world and only those function which are present in the class can access the data. The insulation of the data from direct access by the program is called data hiding or information hiding. Hiding the complexity of proram is called Abstraction and only essential features are represented.In short we can say that internal working is hidden.

    Tuesday, 27 May 2014

    RESOURCE MANAGEMENT AND QOS

    RESOURCE MANAGEMENT AND QOS

    A computer system has many resources, which may be
    required to solve a problem: CPU, memory at different levels,
    bandwidth of I/O devices, e.g., disk and host networkinterface,
    and bandwidth of the system bus. In Figure 3, the
    basic resource types CPU, memory, and bandwidth are
    partitioned into concrete system resources.
    One of the primary functions of an OS is to multiplex
    these resources among the users of the system. In the advent
    of conflicting resource requests, the traditional OS
    must decide which requests are allocated resources to operate
    the computer system fairly and efficiently [Peterson et
    al. 85]. Fairness and efficiency are still the most important
    goals for resource management in today’s commodity OSs.
    However, with respect to multimedia applications, other
    goals that are related to timeliness become of central importance.
    For example, user interactions and synchronization
    require short response times with upper bounds, and
    multimedia streams require a minimum throughput for a
    certain period of time. These application requirements are
    specified as QoS requirements. Typical application-level
    QoS specifications include parameter types like frame rate,
    resolution, jitter, end-to-end delay, and synchronization
    skew [Nahrstedt et al. 99]. These high-level parameters
    have to be broken down (or mapped) into low-level parameters
    and resources that are necessary to support the
    requested QoS, like CPU time per period, amount of memory,
    and average and peak network bandwidth. A discussion
    of this mapping process is beyond the scope of this
    paper, but we want to emphasize at this point that such a
    specification of resource requirements is difficult to
    achieve. A constant frame rate does not necessarily require
    constant throughput and constant execution time per period.
    Furthermore, user interactions can generate unpredictable
    resource requirements.
    In order to meet QoS requirements from applications
    and users, it is necessary to manage the system resources in
    such a manner that sufficient resources are available at the
    right time to perform the task with the requested QoS. In
    particular, resource management in OS for QoS comprises
    the following basic tasks:
    Specification and allocation request for resources that
    are required to perform the task with the requested
    QoS.
    Admission control includes a test whether enough resources
    are available to satisfy the request without interfering
    with previously granted requests. The way
    this test is performed depends on requirement specification
    and allocation mechanism used for this resource.
    Allocation and scheduling mechanisms assure that a
    sufficient share of the resource is available at the right
    time. The type of mechanism depends on the resource
    type. Resources that can only exclusively be used by a
    single process at a time have to be multiplexed in the
    temporal domain. In other words, exclusive resources,
    like CPU or disk I/O, have to be scheduled. Basically,
    we can differentiate between fair scheduling, real-time
    scheduling, and work and non-work conserving scheduling
    mechanisms. So-called shared resources, like
    memory, basically require multiplexing in the spatial
    domain, which can be achieved, e.g., with the help of a
    table.
    Accounting tracks down the actual amount of resources
    that is consumed in order to perform the task.
    Accounting information is often used in scheduling
    mechanisms to determine the order of waiting requests.
    Accounting information is also necessary to
    make sure that no task consumes more resources than
    negotiated and steals them (in overload situations)
    from other tasks. Furthermore, accounting information
    might trigger system-initiated adaptation.
    Adaptation might be initiated by the user/application
    or the system and can mean to downgrade QoS and
    corresponding resource requirements, or to upgrade
    them. Adaptation leads in any case to new allocation
    parameters. Accounting information about the actual
    resource consumption might be used to optimize
    resource utilization.
    Deallocation frees the resources.
    Specification, admission control, and allocation and
    scheduling strongly depend on the particular resource type,
    while adaptation and resource accounting represent more
    resource type independent principles. Thus, the following
    two subsections introduce adaptation and resource accounting,
    before we discuss the different system resources
    in more detail.
     ADAPTATION
    There are two motivations for adaptation in multimedia
    systems: (1) resource requirements are hard to predict, e.g.,
    VBR video and interactivity; and (2) resource availability
    cannot be guaranteed if the system includes best-effort sub-
    Memory
    CPU
    Cache
    Main memory
    Disk
    Disk I/O
    Network
    I/O
    Resources Bandwidth Bus
    Figure 3: Operating system resources

    Monday, 26 May 2014

    Charts in Microsoft Excel 2007

     Microsoft Excel 2007 provides an easy and systematic way to represent text or numeric data in a tabular format. Microsoft Excel 2007 provides you another powerful and easy to tool, which present the data in the pictorial form called Charts. Charts help to compare and data in a more interesting, attractive and efficient manner as it is rightly said that “a picture is worth a thousand words”.
    CHART TYPES
    ·       Column Chart
    ·       Bar Chart
    ·       Line Chart
    ·        Area Chart
    ·       Pie Chart
    ·       XY (Scatter) Chart
    ·       Doughnut Chart
    ·       Radar Chart
    CHART COMPONENTS
    ·       Chart Title
    ·       X-axis or Categories Axis

    ·       Y-axis or Value Axis
    ·       Data Series
    ·       Legends
    ·       Grid lines
    ·       Plot Area
    ·       Chart Area
    ·       Data Labels
    ·       Axis Titles
    CHANGING THE CHART LOCATION
    Ø Select the chart whose location is to be changed.
    Ø Click on design tab under the chart tools.
    Ø Click OK button to move the chart.
    ·       X-axis or Categories Axis

    ·       Y-axis or Value Axis

    Friday, 23 May 2014

    Operating System Software

    Operating system is one of the most important software present in the computer system. It acts as an interface between user and computer, so that user can easily interact with the hardware components of the computer system to get there work done. Along with this it also performs many routines jobs in the computer like memory management, processer management, resources management, etc. Overall it controls the entire working in the computer system.
                                                                                                                                            Major components of Operating System
    ·       Hardware
    ·       The Operating System
    ·       Application Software
    ·        The Human Ware (users)

    Function of Operating System
    Operating system is one of the memory resident programs which is loaded in the main memory (RAM) of the system when we switch on the computer system and stays there till the system switched off. It is due to the presence of this software, a user controls the working of computer system. It manages the functioning of hardware components and the storage of information in the form of files and folders.
    Major functions of Operating System 

    ·       Processor Management
    ·       Memory Management
    ·       Device Management
    ·       Information Management
    Types of Operating System
    ·       Single User Operating System
    ·       Multitasking Operating System
    ·       Multiuser Operating System
    ·       Real Time Operating System
    Popular Operating Systems
    ·        UNIX
    ·       LINUX



    COMPUTER NETWORK

    Similarly, computer networking is a concept where two or more computers are connected with each other through some communication medium to share there information and resources with each other. The computers connected in a network can communicate with each other as well as they can also work independently.

    Advantage of Computer Networking
    ·       Information Sharing :
    ·       Resource Sharing :
    ·       Communication Sharing :


    Types of Computer Network
    ·       LAN (Local Area Network)
    ·       MAN(Metropolitan Area Network)
    ·       WAN(Wide Area Network)



    Network Hardware

     To connect the computers in a network, various types of hardware components are needed depending upon the type of network.
    Hardware Components
    ·       Network Interface Card (NIC)
    ·       Transmission Medium
    ·       Hub
    ·       Switch
    ·       Router
    ·       Connector                                                                                                                               

    Network Software
    To send and receive information from one computer to another, along with the network hardware, one requires the software as well.
    Main Software Required
    ·       Network Operating System (NOS)
    ·       Protocol

    Wednesday, 21 May 2014

    advantages of client/server computing


    1. user friendly application .
    2. n/w security .
    3. A server units for client request.
    4. Client format server response for the application.
    5. Client communication with server. 
    6. centralization
    7. sociability
    8. interchangeability