Home     About me      Technical Links     Project Life Cycle    Other Links  Glossary  Contact-information

Bhaskaruni Glossary Page


Algorithms

<algorithm, programming> A detailed sequence of actions to perform to accomplish some task. Named after an Iranian mathematician, Al-Khawarizmi.

Technically, an algorithm must reach a result after a finite number of steps, thus ruling out brute force search methods for certain problems, though some might claim that brute force search was also a valid (generic) algorithm. The term is also used loosely for any sequence of actions (which may or may not terminate).

White Box Testing 

<programming> (Or "clear", "glass", "open") Software testing approaches that examine the program structure and derive test data from the program logic.

Structural testing is sometimes referred to as clear-box testing since white boxes are considered opaque and do not really permit visibility into the code

Bluetooth

Bluetooth is an open specification for wireless communications of data and voice. It is based on a low-cost short-range radio link, built into a 9 x 9 mm microchip, facilitating protected ad hoc connections for stationary and mobile communication environments.

 

Bluetooth technology will enable users to connect their mobile computers, digital cellular phones, handheld devices, network access points and other mobile devices via wireless short-range radio links unimpeded by line-of-sight restrictions.

Eliminating the need for proprietary cables to connect devices, Bluetooth technology will increase the ease and breadth of wireless connectivity. Users will be able to automatically receive e-mail on their notebook computers via the digital cellular phones in their pockets or synchronize their primary PC with their handheld computer without taking it out of their briefcase.

More information about bluetooth, members and user situations can be found at the bluetooth website. Also see Symbian's press release announcing it's membership of the consortium.

Dedicated Systems 
A system where the functionality is once and for all tied up into the hard- and software. Most dedicated systems have soft real-time constrains, others need to be hard real-time and some have fault-tolerance build in

Device Drivers

Software to control a hardware component or peripheral device of a computer such as a magnetic disk, magnetic tape or printer. 

A device driver is responsible for accessing the hardware registers  of the device and often includes an interrupt handler to service interrupts generated by the device.

Device drivers often form part of the lowest level of the operating systems kernel , with which they are linked when the kernel is built. Some more recent systems have loadable device drivers which can be installed from files after the  OS is running

Embedded Systems 
Computer system that is enclosed in another system and makes an essential part of it. OR. Hardware and software, which forms a component of some larger system and which, are expected to function without human intervention

Fault tolerant Systems 
Systems that continue working in all circumstances (except for physical destruction).
OR.
The ability of a system or component to continue normal operation despite the presence of hardware or software faults.

Java  Technology 

The JavaTM platform is a fundamentally new way of computing, based on the power of open network computing and the idea that the same executable content should run on many different kinds of computers, consumer products, and other devices.

 

The idea is simple: 100% Pure JavaTM software works just about everywhere -- from the smallest devices to supercomputers. Java technology components don't care what kind of computer, Smartphone, TV, or PDA they run on. They just work, on any kind of compatible device that supports the Java platform.

To date over 150 companies, including Symbian, have licensed this platform from Sun Microsystems for inclusion in a variety of desktop operating systems and web browsers, PDAs and Wireless Information Devices.

The Java language is a robust, easy-to-use, object-oriented environment offering advanced features such as automatic memory management and run-time error checking. The Java Virtual Machine executes platform independent instructions. A rich set of APIs allows for the creation of highly functional applets and applications. Together these form the Java platform.

Java technology brings the popularity of Internet computing to the Wireless Information Device space allowing deployment of cross-platform applications and solutions.

More information on Java technology and platforms can be found at the Sun Microsystems’ Java Software homepage. Also see Symbian’s press release on licensing the Java technology.

 

Functional testing  

<testing> (Or "black-box testing", "closed-box testing") The application of test data derived from the specified functional requirements without regard to the final program structure.

Real time systems 
A system is a real-time system when it can support the execution of applications with time constraints on that execution. There can be made a classification into hard and soft real-time systems based on their properties, each of them is explained with the specific example.

An example of a hard real time system is a digital fly-by-wire control system of an aircraft:
No lateness is accepted under any circumstances, otherwise the aircraft is not controllable.
Useless results if late, if the control system does not respond timely, the result is a hole in the ground.
Catastrophic failure, which needs no explanation in the case of an aircraft crash.
Cost of missing deadline is infinitely high, the lives of people depend on the correct working of the control system of the aircraft.

A soft real-time system can be a vending machine:
Rising cost for lateness of results: As it will take longer to treat a customer when the performance of the vending machine is degrading, less customers pay at this machine which results in less profits for the shop owner.
Accept lower performance for lateness, it is not catastrophic when deadlines are not met. It will take longer to handle one client with the vending machine.

Thin client 

"Thin client" is a general term for computing devices that rely on centralized or network-based resources to operate. At Netier, we view the general-purpose terminal as the original thin client. Because thin clients are not complete computers, the overhead associated with administration, including configuration, maintenance and support, and installation, is lower

Thin client FAQ

  <networking> A simple client program or device which relies on most of the function of the system being located in the server.

gopher clients, for example, are very thin; they are stateless and are not required to know how to interpret and display objects much more complex than menus and plain text. Gopher servers, on the other hand, may know how to perform searches across databases, provide gopher gateways to other services, and so on

By the mid-1990s, it was thought that the model of decentralised computing, where each user has his own full-featured and independent microcomputer, had won over a centralised model where multiple users use thin clients (e.g., dumb terminals) to do work on a shared minicomputer or mainframe server. Networked personal computers typically operate as "fat clients", often providing everything except some file storage and printing locally.

By 1996, reintroduction of thin clients is being proposed, especially for LAN-type environments (see the cycle of reincarnation). The main expected benefit of this is ease of maintenance: with fat clients, especially those suffering from the poor networking support of Microsoft operating systems, installing a new application for everyone is likely to mean having to physically go to every user's workstation to install the application, or having to modify client-side configuration options; whereas with thin clients the maintenance tasks are centralised on the server and so need only be done once.

Also, by virtue of their simplicity, thin clients generally have fewer hardware demands, and are less open to being screwed up by ambitious lusers.

Real time Systems

"A real-time system is one in which the correctness of the computations not only depends upon the logical correctness of the computation but also upon the time at which the result is produced. If the timing constraints of the system are not met, system failure is said to have occurred."

Definition Real-Time Systems:
A Real-Time System responds in a (timely) predictable way to unpredictable external stimuli arrivals. In short, a Real-Time System has to fulfil under extreme load conditions:

  1. timeliness: meet deadlines, it is required that the application has to finish certain tasks within the time boundaries it has to respect.
  2. simultaneity or simultaneous processing: more than one event may happen simultaneously, all deadlines should be met.
  3. predictability: the real-time system has to react to all possible events in a predictable way.
  4. dependability or trustworthiness: it is necessary that the real-time system environment can rely on it.

Process VS Thread

Multi Tasking/Threading/Processors 

MULTI TASKING

MULTI THREADING

MULTI PROCESSING

Dividing the processor time among the thread awaiting for execution and creating he illusion of that all threads are executing at the same time

Supporting more than one thread the within single processing

Running same code in single processor and multi processors. Symmetric multi processing the OS runs system code in all of the available processors.

Wireless Application Protocol

WAP is an open, global standard that empowers mobile users with wireless devices to easily access and interact with information and services.

With active participation from the entire industry, the WAP Forum has delivered a set of Internet standard protocols designed to run on top of the Internet IP protocol and other wireless network bearers.

This vendor-neutral and network-independent open specification is the unified worldwide standard for providing wireless Internet access from handheld devices.

The WAP Forum, whose members include Symbian, Ericsson, Matsushita, Motorola and Nokia, is an organization established to create an open, global standard to enable access to real-time information and services from wireless devices.

The primary goal of the WAP Forum is to bring together companies from all aspects of the wireless industry value chain to ensure interoperability and growth of the wireless market.

The Forum is comprised of 100 members including manufacturers representing 75% of the worldwide handset market, carriers with over 100 million subscribers, leading infrastructure providers, PC software companies and other companies delivering solutions to the wireless industry.

The WAP Forum website hosts WAP technical documentation which includes the current Version 1.1 of the WAP specifications.


Raveendra
Copyright © 2000   All rights reserved.
Revised: January 28, 2000 .