Linux is a relatively new operating system that clones the UNIX operating system. It was written by Linus Torvalds and a scattered team of volunteer programmers across the Internet. The Linux kernel and many system components are released under the GNU General Public License (GPL), which dictates that the source code for those components, including modifications, must be made available under the the GPL or a compatible license whenever a compiled version is distributed.
An operating system (OS) is a special program that acts as an intermediary between the computer user and the computer hardware. Apple's MacOS and Microsoft Windows are operating systems. The OS provides an environment to make the computer system convenient and efficient to use. Among other things, the operating system delegates which program should run, manages memory, provides a file system interface, schedules hard disk access, manages the network (e.g. TCP/IP), allows programs to talk to one another, and provides security.
Monday, November 26, 2007
EMBEDDED LINUX
When someone talks about embedding Linux, they mean porting the Linux kernel to run on a particular CPU and board which will be put into an embedded device. There are many companies that sell embedded Linux solutions. These usually include a ported Linux kernel with cross-development tools, and sometimes with real time extensions. For the most part, the APIs and kernel codebase are the same for embedded Linux as desktop Linux.
Why Embedded Linux?
Of course, the "embedded devices" category covers the territory between microwave oven controllers to handheld devices only slightly less powerful than laptop computers. Where does Linux fit into this spectrum? Many are finding that a system as powerful as Linux extends surprisingly low in this range, often being the best choice not only for PDAs but also for appliances and cell phones.
Our goal is not to proselytize Linux, but it is worth mentioning a few bullet points that device manufacturers have found attractive about Linux:
Royalty-free
Strong networking support
Has already been ported to many different CPU architectures
Relatively small for its feature set
Easy to configure
Huge application base
Modern OS (eg. memory management, kernel modules, etc.)
Why Embedded Linux?
Of course, the "embedded devices" category covers the territory between microwave oven controllers to handheld devices only slightly less powerful than laptop computers. Where does Linux fit into this spectrum? Many are finding that a system as powerful as Linux extends surprisingly low in this range, often being the best choice not only for PDAs but also for appliances and cell phones.
Our goal is not to proselytize Linux, but it is worth mentioning a few bullet points that device manufacturers have found attractive about Linux:
Royalty-free
Strong networking support
Has already been ported to many different CPU architectures
Relatively small for its feature set
Easy to configure
Huge application base
Modern OS (eg. memory management, kernel modules, etc.)
RTLINUX
One of the best-known realtime Linux implementations; the development was sponsored by Finite State Machine Labs (FSMLabs), who now sell RTLinux and related products. RTLinux is available under the GPL.
RTLinux claims genuine hard realtime, via an RT kernel which runs the realtime processes, and runs the Linux kernel as its least-priority thread. Processes not requiring realtime response are written as standard Linux apps. Realtime processes are implemented either as realtime threads or interrupt handlers, and are controlled by the RT kernel. The RTLinux project claims a typical 15usec response time to an interrupt assertion on the x86 platform, with an admonishment to compare the worst-case response time (less than 30ms on a 486-33, "near the hardware limit"). Realtime threads follow the POSIX realtime conventions for pthreads. RTLinux is available on x86 (incl. SMP), PPC and Alpha; floating-point support within realtime threads requires the availability of hardware FP, currently working on the x86 and PPC architectures. There appears to be no ARM support.
RTLinux claims genuine hard realtime, via an RT kernel which runs the realtime processes, and runs the Linux kernel as its least-priority thread. Processes not requiring realtime response are written as standard Linux apps. Realtime processes are implemented either as realtime threads or interrupt handlers, and are controlled by the RT kernel. The RTLinux project claims a typical 15usec response time to an interrupt assertion on the x86 platform, with an admonishment to compare the worst-case response time (less than 30ms on a 486-33, "near the hardware limit"). Realtime threads follow the POSIX realtime conventions for pthreads. RTLinux is available on x86 (incl. SMP), PPC and Alpha; floating-point support within realtime threads requires the availability of hardware FP, currently working on the x86 and PPC architectures. There appears to be no ARM support.
what is a RTOS?????

To most people, embedded systems are not recognizable as computers. Instead, they are hidden inside everyday objects that surround us and help us in our lives. Embedded systems typically do not interface with the outside world through familiar personal computer interface devices such as a mouse, keyboard and graphic user interface. Instead, they interface with the outside world through unusual interfaces such as sensors, actuators and specialized communication links. Real-time and embedded systems operate in constrained environments in which computer memory and processing power are limited. They often need to provide their services within strict time deadlines to their users and to the surrounding world. It is these memory, speed and timing constraints that dictate the use of real-time operating systems in embedded software.Basic kernel servicesIn the discussion below, we will focus on the "kernel" – the part of an operating system that provides the most basic services to application software running on a processor. The "kernel" of a real-time operating system ("RTOS") provides an "abstraction layer" that hides from application software the hardware details of the processor (or set of processors) upon which the application software will run.
Figure : Basic Services Provided by a Real-Time Operating System KernelThe most basic category of kernel services, at the very center of Figure , is Task Management. This set of services allows application software developers to design their software as a number of separate "chunks" of software -- each handling a distinct topic, a distinct goal, and perhaps its own real-time deadline. Each separate "chunk" of software is called a "task." Services in this category include the ability to launch tasks and assign priorities to them. The main RTOS service in this category is the scheduling of tasks as the embedded system is in operation. The Task Scheduler controls the execution of application software tasks, and can make them run in a very timely and responsive fashion.
The second category of kernel services, shown at the top of Figure 2, is Intertask Communication and Synchronization. These services make it possible for tasks to pass information from one to another, without danger of that information ever being damaged. They also make it possible for tasks to coordinate, so that they can productively cooperate with one another. Without the help of these RTOS services, tasks might well communicate corrupted information or otherwise interfere with each other.Since many embedded systems have stringent timing requirements, most RTOS kernels also provide some basic Timer services, such as task delays and time-outs. These are shown on the right side of Figure 2.Many (but not all) RTOS kernels provide Dynamic Memory Allocation services. This category of services allows tasks to "borrow" chunks of RAM memory for temporary use in application software. Often these chunks of memory are then passed from task to task, as a means of quickly communicating large amounts of data between tasks. Some very small RTOS kernels that are intended for tightly memory-limited environments, do not offer Dynamic Memory Allocation services.Many (but not all) RTOS kernels also provide a "Device I/O Supervisor" category of services. These services, if available, provide a uniform framework for organizing and accessing the many hardware device drivers that are typical of an embedded system.
Friday, October 12, 2007
Friday, September 28, 2007
Chirutha - Movie review (Keka--kummu)

Ram Charan’s father, is an honest person and auto driver by profession. The kid boy RC loses his parents when his father fights down against a crime. For his survival the boy gets arrested on a murder case which he never does. After his term in jail he finds a job as a guide with a travel agent. As part of his job he’s sent to Hong Kong! There he bumps into the beauty, Prakash Raj’s daughter, who happens to be there as a tourist. He already knows the girl since he comes across her once in India.
That is the story of first half. Songs are foot tapping, which go well with young audience. Ram Charan’s performance is quite mellowed and doesn’t look like a debutante. Especially he performed high in the action scenes. Though he also looked good at dances, he couldn’t be used to the fullest since choreographer’s composition is not up to the expectations.
Puri’s son played the role of Ram Charan as kid. First half is OK with all the necessary entertainment for youth.
With twists and hero’s adventures movie comes to an end. Ram Charan worked with ease in sentiment scenes and there is a sort of punch in dialogue delivery. Choreography should have been taken care of more. It doesn’t appeal like a Puri Jagannath’s movie, in terms of screenplay. Finally, for RC, ‘Chirutha’ turns out to be a good platform to begin with.
Subscribe to:
Posts (Atom)