Google Search

Custom Search

Welcome

Saturday, October 24, 2009

Uses

Operating system-level virtualization is commonly used in virtual hosting environments, where it is useful for securely allocating finite hardware resources amongst a large number of mutually-distrusting users. It is also used, to a lesser extent, for consolidating server hardware by moving services on separate hosts into containers on the one server.

Other typical scenarios include separating several applications to separate containers for improved security, hardware independence, and added resource management features.

OS-level virtualization implementations that are capable of live migration can be used for dynamic load balancing of containers between nodes in a cluster.

Sunday, October 18, 2009

OS Embedded

The Operating System Embedded (mostly known under the acronym OSE) is a real-time embedded operating system created by the Swedish information technology company ENEA. Bengt Eliasson, who at the time was a consultant from ENEA with an assignment at Ericsson, wrote the basic parts of the kernel. The early version for the Zilog Z80 processor was named OS80.

OSE uses events (named signals due to ENEA's Telecomms background) in the form of messages passed to and from processes in the system. Messages are stored in a queue attached to each process. A 'link handler' mechanism allows signals to be passed between processes on separate machines, over a variety of transports. The OSE signalling mechanism formed the basis of an open-source inter-process communication project called LINX .

The system exists in several revisions named OSE for ARM processors, PowerPC and MIPS, OSEck for various DSP's and OSE Epsilon for minimal devices(written 100% in assembly).

OSE supports wide range of processors:

  1. ARM consortium family: ARM 7, ARM 9, ARM10, XScale
  2. MIPS 32 consortium family
  3. Freescale PowerPC family: MPC 5xx, MPC 5xxx, Host Processors MPC 7xxx, PowerQUICC I MPC 8xx, PowerQUICC II MPC 82xx and MPC 83xx, PowerQUICC III MPC 85xx, Host Processors MPC 8xxx
  4. IBM PowerPC family (from AMCC): 405EP, 405GP, 440GP, 440GX
  5. IBM PowerPC family (from IBM): 750, 750CX, 750FX, 750GX
  6. INTEL ARM 5 family - XScale, PXA-25x
  7. Intel Network Processor: IXP2400
  8. Texas Instruments: OMAP (all chipsets, for OMAP DSP part see OSEck)

Saturday, October 10, 2009

OS Advocacy

Operating system advocacy is the practice of attempting to increase the awareness and improve the perception of a computer operating system. The motivation behind this may be to increase the number of users of a system, to assert the superiority of one choice over another or out of brand loyalty, pride in an operating system's abilities, or to persuade software vendors to port specific applications or device drivers to the platform.Operating system advocacy can vary widely in tone and form, from published comparisons to heated debates on mailing lists and other forums. In its most extreme forms it can veer into zealotry. Advocates are often normal users who devote their spare time to advocacy of their operating system of choice; many have a deep and abiding interest in the use, design and construction of operating systems and an emotional investment in their favourite operating system.Operating system advocacy can be compared to advocacy in other fields, particularly browser and editor wars, but also advocacy of programming languages and video game consoles.

Sunday, October 4, 2009

OS level virtualization

Operating system-level virtualization is a server virtualization method where the kernel of an operating system allows for multiple isolated user-space instances, instead of just one. Such instances (often called containers, VEs, VPSs or jails) may look and feel like a real server, from the point of view of its owner. On Unix systems, this technology can be thought of as an advanced implementation of the standard chroot mechanism. In addition to isolation mechanisms, the kernel often provides resource management features to limit the impact of one container's activities on the other containers.

Friday, September 25, 2009

Kernel

n computing, the 'kernel' is the central component of most computer operating systems. Its responsibilities include managing the system's resources (the communication between hardware and software components). Usually as a basic component of an operating system, a kernel can provide the lowest-level abstraction layer for the resources (especially memory, processors and I/O devices) that application software must control to perform its function. It typically makes these facilities available to application processes through inter-process communication mechanisms and system calls.
Operating System tasks are done differently by different kernels, depending on their design and implementation. While monolithic kernels will try to achieve these goals by executing all the operating system code in the same address space to increase the performance of the system, microkernels run most of the operating system services in user space as servers, aiming to improve maintainability and modularity of the operating system. A range of possibilities exists between these two extremes.

Saturday, September 19, 2009

Shell

A shell is a piece of software that provides an interface for users. Typically, the term refers to an operating system shell which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web browsers and email clients that are "shells" for HTML rendering engines. The name 'shell' originates from shells being an outer layer of interface between the user and the innards of the operating system (the kernel).
Operating system shells generally fall into one of two categories: command-line and graphical. Command-line shells provide a command-line interface (CLI) to the operating system, while graphical shells provide a graphical user interface (GUI). In either category the primary purpose of the shell is to invoke or "launch" another program; however, shells frequently have additional capabilities such as viewing the contents of directories.
The relative merits of CLI- and GUI-based shells are often debated. CLI proponents claim that certain operations can be performed much faster under CLI shells than under GUI shells (such as moving files, for example). However, GUI proponents advocate the comparative usability and simplicity of GUI shells. The best choice is often determined by the way in which a computer will be used. On a server mainly used for data transfers and processing with expert administration, a CLI is likely to be the best choice. On the other hand, a GUI would be more appropriate for a computer to be used for image or video editing and the development of the above data.

Friday, September 11, 2009

History Of Computer Architecture

The term “architecture” in computer literature can be traced to the work of Lyle R. Johnson and Frederick P. Brooks, Jr., members in 1959 of the Machine Organization department in IBM’s main research center. Johnson had the opportunity to write a proprietary research communication about Stretch, an IBM-developed supercomputer for Los Alamos Scientific Laboratory. In attempting to characterize his chosen level of detail for discussing the luxuriously embellished computer, he noted that his description of formats, instruction types, hardware parameters, and speed enhancements was at the level of “system architecture” – a term that seemed more useful than “machine organization.” Subsequently, Brooks, one of the Stretch designers, started Chapter 2 of a book (Planning a Computer System: Project Stretch, ed. W. Buchholz, 1962) by writing, “Computer architecture, like other architecture, is the art of determining the needs of the user of a structure and then designing to meet those needs as effectively as possible within economic and technological constraints.” Brooks went on to play a major role in the development of the IBM System/360 line of computers, where “architecture” gained currency as a noun with the definition “what the user needs to know.” Later the computer world would employ the term in many less-explicit ways.
The first mention of the term architecture in the referred computer literature is in a 1964 article describing the IBM System/360. The article defines architecture as the set of “attributes of a system as seen by the programmer, i.e., the conceptual structure and functional behavior, as distinct from the organization of the data flow and controls, the logical design, and the physical implementation.” In the definition, the programmer perspective of the computer’s functional behavior is key. The conceptual structure part of an architecture description makes the functional behavior comprehensible, and extrapolatable to a range of Use cases. Only later on did ‘internals’ such as “the way by which the CPU performs internally and accesses addresses in memory,” mentioned above, slip into the definition of computer architecture.