Kernel is nothing but the core of any operating system. It is the kernel that makes an OS entirely different from others. A kernel is actually a large block of code which keeps the system up and running from the time of booting, till shutdown. Kernel is that part of an OS which directly communicates with the hardware of the machine in which it runs and also with external hardware devices.The kernel can be viewed as resource managing code of an OS. It is responsible for managing and allocating resources like memory, processors etc. It also allows OS to communicate and control various external hardware devices like pendrive, memory card, keyboard etc.
Linux is one of the few, ever expanding endeavors developed in the 20th century. Obvious or not, it has continuously cranked itself up to reach new horizons since its humble beginnings in 1991. A more than 50 year old market segment, the embedded systems, which encompasses a vast domain of electronic products ranging from little wristwatch cameras, to huge distributed systems like telecom switches, has been charmed by the frills and thrills of Linux and has deeply benefitted from the same. Embedded Systems are everywhere, ranging from small control applications which require small microcontrollers to massive parallel processors which have colossal memory requirements. Mobile phones, Inverters, microwaves, PDAs, you name it, and you might find an embedded system at its essential core.
An Operating system (OS) is nothing but a collection of system calls or functions which provides an interface between hardware and application programs. It manages the hardware resources of a computer and hosting applications that run on the computer. An OS typically provides multitasking, synchronization, Interrupt and Event Handling, Input/ Output, Inter-task Communication, Timers and Clocks and Memory Management. Core of the OS is the Kernel which is typically a small, highly optimised set of libraries. Real-time systems are those systems in which the correctness of the system depends not only on the logical result of computation, but also on the time at which the results are produced. RTOS is therefore an operating system that supports real-time applications by providing logically correct result within the deadline required. Basic Structure is similar to regular OS but, in addition, it provides mechanisms to allow real time scheduling of tasks.
Twenty years ago, on August 25, 1991, a computer science student Linus Torvalds made a quaint announcement on the network that he’d been doing an operating system as a hobby for the 386(486) AT clones and now that he had good success in it, he would like to invite suggestions on what it should have and what not. Little did he know back then that he had just put the final piece of the big jigsaw puzzle called ‘Free Software Movement’ into its right place, Linux. By 1991, the world was witnessing an era of unprecedented hardware growth with more powerful computers being developed. The scenario was however poor on the software development front. By virtue of a highly successful marketing strategy, DOS reigned supreme and was the mainstay of almost every computer in all corners of the world.
During the year 1950, the computer could carry out operation for only a single program at a time. The machine would be loaded with the program and the machine would be operated only after the program was completely loaded. Debugging of a program could be carried out using toggle switches and panel lights on the front panel.An Operating System is software made of data and programs that has a control to execute the application programs. It acts as an interface between hardware and applications. An Operating system serves as an interface between the programmer and computer hardware. Operating systems are present in the electronic devices such as video game console, web servers, supercomputers, cellular phones and many more.
This Project deals with the porting of Micro C/OS-II kernel in ARM powered microcontroller for the implementation of multitasking and time scheduling. Here a real time kernel is the software that manages the time of a micro controller to ensure that all time critical events are processed as efficiently as possible. We have applied…