Subscribe:

Pages

Friday, September 18, 2009

HAVi

An average household nowadays contains many very complicated devices. Many of them are home entertainment devices related to handling different audio or video data. These devices are computers in essence, but just more specialized in their features than a home PC. Home networking has become very popular nowadays since a normal household might contain several PCs that need to use shared resources like printers or file shares. Home audio and video devices like VCR, TV, amplifier, tuner, DVD, CD player and set-top-box form a similar interconnected network (see Figure 1). Why couldn’t these miniature computers also make use of each other’s features and even control each other to make everything easier for the consumer?


Major consumer electronics, software, semiconductor and computer manufacturers think that this should be possible and have decided to make it happen. The manufactures, namely Grundig, Hitachi, Panasonic, Philips, Sharp, Sony, Thomson and Toshiba along with now over30 other participants, have formed a non-profit organization called HAVi (Home Audio Video Interoperability) for promoting the development of interoperable consumer products. The goal of HAVi organization is to provide a standard open architecture for intelligent audio and video devices to interoperate with each other regardless of manufacturer, operating system, CPU or programming language used for implementation (HAVi, Inc., 2001a).The first beta version of the HAVi standard version 1.0 was published in December 1998while the final 1.0 version was released in December 1999. The current version of the specification is 1.1 (HAVi, Inc., 2001b) and it was published in May 2001.

Sunday, August 30, 2009

Prolog

Logic programming is a programming paradigm based on mathematical logic. In this paradigm the programmer
specifies relationships among data values (this constitutes a logic program) and then poses queries to
the execution environment (usually an interactive interpreter) in order to see whether certain relationships
hold. Putting this in another way, a logic program, through explicit facts and rules, defines a base of knowledge
from which implicit knowledge can be extracted. This style of programming is popular for data base
interfaces, expert systems, and mathematical theorem provers. In this tutorial you will be introduced to
Prolog, the primary logic programming language, through the interactive SWI-Prolog system (interpreter).
You will notice that Prolog has some similarities to a functional programming language such as Hugs. A
functional program consists of a sequence of function definitions — a logic program consists of a sequence
of relation definitions. Both rely heavily on recursive definitions. The big difference is in the underlying
execution “engine” — i.e., the imperative parts of the languages. The execution engine of a functional
language evaluates an expression by converting it to an acyclic graph and then reducing the graph to a
normal form which represents the computed value. The Prolog execution environment, on the other hand,
doesn’t so much “compute” an answer, it “deduces” an answer from the relation definitions at hand. Rather
than being given an expression to evaluate, the Prolog environment is given an expression which it interprets
as a question:
For what parameter values does the expression evaluate to true?
You will see that Prolog is quite different from other programming languages you have studied. First,
Prolog has no types. In fact, the basic logic programming environment has no literal values as such. Identifiers
starting with lower-case letters denote data values (almost like values in an enumerated type) while all other
identifiers denote variables. Though the basic elements of Prolog are typeless, most implementations have
been enhanced to include character and integer values and operations. Also, Prolog has mechanisms built
in for describing tuples and lists. You will find some similarity between these structures and those provided
in Hugs.
CSCI

The Evolution of Lisp

Lisp is the world’s greatest programming language—or so its proponents think. The
structure of Lisp makes it easy to extend the language or even to implement entirely new
dialects without starting from scratch. Overall, the evolution of Lisp has been guided
more by institutional rivalry, one-upsmanship, and the glee born of technical cleverness
that is characteristic of the “hacker culture” than by sober assessments of technical
requirements. Nevertheless this process has eventually produced both an industrialstrength
programming language, messy but powerful, and a technically pure dialect,
small but powerful, that is suitable for use by programming-language theoreticians.
We pick up where McCarthy’s paper in the first HOPL conference left off. We trace
the development chronologically from the era of the PDP-6, through the heyday of
Interlisp and MacLisp, past the ascension and decline of special purpose Lisp machines,
to the present era of standardization activities. We then examine the technical evolution
of a few representative language features, including both some notable successes and
some notable failures, that illuminate design issues that distinguish Lisp from other
programming languages. We also discuss the use of Lisp as a laboratory for designing
other programming languages. We conclude with some reflections on the forces that
have driven the evolution of Lisp.

Friday, August 7, 2009

Applications of integrated Image and Ladar Sensors for UAV's

Abstract:

Small unmanned air vehicles UAV's have the potential to provide real-time surveillance information for a wide range of applications in a relatively low-cost and low risk manner. Potential applications for these include search and rescue, coastal surveillance, fire spotting, and defence.

Saturday, August 1, 2009

MAGNATORESISTIVE RAM (MRAM)

MRAM that uses magnetic properties to store data. This new type of chip will compete with other forms established forms of semiconductor memory, such as Flash and RAM.Most engineers believe that the technology, called MRAM could reduce the cost and power consumption of electronics for cell phones, music players, laptops, and servers. The feature that makes MRAM an alluring alternative to other forms of semiconductor memory is the way it stores data. Flash memory and RAM, for example,Hold information as electric charge. In contrast, MRAM uses the magnetic orientation Of electrons to represent bits. Hold data with out a power supply and can be written to and read from an unlimited number of times. Reading and writing data from MRAM is also fast, taking a matter of nanoseconds. MRAM is able to hold data without power.

COOPERATIVE LINUX

Cooperative Linux, abbrieviated as coLinux, is software that lets Microsoft Windows cooperate with the Linux kernel to run both in parallel on the same machine. Cooperative Linux utilizes the concept of a Cooperative Virtual Machine (CVM). In contrast to traditional VMs, the CVM shares resources that already exist in the host OS. In traditional (host) VMs, resources are virtualized for every (guest) OS. The CVM gives both OSs complete control of the host machine while the traditional VM sets every guest OS in an unprivileged state to access the real machine. The term \"cooperative\" is used to describe two entities working in parallel. In effect Cooperative Linux turns the two different operating system kernels into two big coroutines. Each kernel has its own complete CPU context and address space, and each kernel decides when to give control back to its partner. However, while both kernels theoretically have full access to the real hardware, modern PC hardware is not designed to be controlled by two different operating systems at the same time. Therefore the host kernel is left in control of the real hardware and the guest kernel contains special drivers that communicate with the host and provide various important devices to the guest OS

Elliptical Curve Cryptography

Elliptical curve cryptography (ECC) is a public key encryption technique based on elliptic curve theory that can be used to create faster, smaller, and more efficient cryptographic keys. ECC generates keys through the properties of the elliptic curve equation instead of the traditional method of generation as the product of very large prime numbers. The technology can be used in conjunction with most public key encryption methods, such as RSA, and Diffie-Hellman. ECC can yield a level of security with a 164-bit key that other systems require a 1,024-bit key to achieve. Because ECC helps to establish equivalent security with lower computing power and battery resource usage, it is becoming widely used for mobile applications. ECC was developed by Certicom, a mobile e-business security provider, and was recently licensed by Hifn, a manufacturer of integrated circuitry and network security products. Many manufacturers, including 3COM, Cylink, Motorola, Pitney Bowes, Siemens, TRW, and VeriFone have included support for ECC in their products.