StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Real Time Embedded Systems - Assignment Example

Cite this document
Summary
This paper outlines that in general, an embedded system is a hardware programmed for a specific task. It performs tasks at much lower cost than normal computers and as per real-time constraints. The functions, pertaining to the system do not require much speed. …
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER91.9% of users find it useful
Real Time Embedded Systems
Read Text Preview

Extract of sample "Real Time Embedded Systems"

 In general, an embedded system is a hardware programmed for a specific task. It performs tasks at much lower cost than normal computers and as per real time constraints. The functions, pertaining to the system do not require much speed. The software for the system is known as Firmware and is located in Read Only Memory or Flash Memory which are mostly of solid state. Moving parts like disk drives, buttons, switches etc are sensibly avoided in the design of the embedded system. A simulator is made use of in the system. It helps in compiling, assembling and running the codes. Debugging is also the function of the simulator. Deadlocks are considered to be computer bugs. They are more prevalent in ‘concurrent programming’. At the outset it is necessary to investigate the ways to exhibit deadlocks. This is very important, especially in testing. It is to be ensured that multi-threaded programs do not get into dead locks. While trying to solve deadlocks, it is to be taken care that no mistake occurs; otherwise fresh deadlocks will emerge. A deadlock SURFACES because more than one thread waits on each other forming a cycle. This prevents each of them from making any progress. Sometimes it is deliberately introduced by the programmer to avoid race conditions. An example is acquiring locks in an incorrect order. This will cause more threads to wait for each other. This is due to wrong use of synchronization primitives. When locking constructs are not adopted, it will create deadlock. It can also occur in any kind of circular wait. Dead lock free execution of concurrent programs is indeed difficult, but it is important as multi-core processors force software developers to do applications simultaneously. But there are ways to control the execution of software to avoid deadlocks. The methodology adopted is based on Petri nets. To guarantee deadlock-free operation feedback controllers for concurrent programs are synthesized based on place variants. The controllers are then implemented online. For successful development of the software industry, especially in the case of embedded system it is essential to manage the evolution of a system. They are not stand alone or closed systems. They have to interact with various devices in the network, where every application needs a different software version. Software updates are needed for changes in the hardware, additional user requirements and new system and software architecture. There are companies which have developed methods, tools and process for software development of real time embedded software that takes care of evolution management. ‘Validation approach’ and ‘incremental requirement management’ are the two wings of evolution management, which define the evolution paths. Evolution takes place naturally in a software system. Usually it occurs during maintenance. The systems that have reached the limit of evolution deserve to be replaced. In some systems the evolution takes place even during their regular operation. They are then considered to be adaptable. Semantically adaptable systems are of need to industry because they are capable of adapting to the changes with little interference from the organizations. The hardware configuration of embedded systems is restricted. So it is not possible to apply here those techniques meant for non embedded systems. The environment of a software system is changing rapidly everyday. And it is natural that the system adapts to such changes. It is necessary for the success of the industry. The adaptation is easy in the case of software architecture as the changes are only made to the components. As already mentioned, the adaptability techniques for embedded and non- embedded systems are different. This is because the embedded systems operate in a much difficult atmosphere. Software adaptability is a key non functional requirement (NFR) for evolving systems. The strategies to adapt embedded systems have to be understood by solving practical problems of vocabulary evolution. Many software architectures can be thus developed. And it is necessary to implement the codes that follow from these architectures. The implementation embedded system calls for modern approaches and not the usual hardware based notations. The importance of software in embedded systems design necessitates the careful study of the up-to-date methods of analyzing and specifying of the software. As a result of the Unified Modeling Language (UML) and extension proposals in the real time sphere, new designs are developed, far superior to the traditional a hardware and software. No doubt, the UML has its limitations. As design is controlled by software, the tools required to carry it out has to be updated. That is the job of the design personnel. The concepts of coherency and inheritance are needed to throw light on the properties of ‘virtual prototyping technology’, which is made use of in designing the embedded systems. The virtual prototype showing the coherent view of design aspects and timing take care of software development and their revision by the design engineers. The accuracy of each part and components as needed by the software is captured by the virtual prototype on account of the property of inheritance. Real time systems are computing systems that adhere to the sequential specifications in all conditions irrespective of the load or faults. In an embedded system, the function of the system is controlled by the microprocessor which in turn is controlled by the firmware. Reduced development time, handling of multiple tasks simultaneously, increased complexity etc are the factors that weigh in favor of firmware. Real time computing or Reactive computing pertains to the study of hardware and software systems subjected to a real time constraint, that is, operational target. In a real time system the application can be considered mission critical. In the case of embedded system hard real time systems interact with physical hardware at a low level. The fundamental requirement of a real time system is predictability and not performance. An embedded system performs certain dedicated functions with real time computing constraints. It often includes hardware and software parts. The function of the embedded system is to do some important specific tasks. It is not meant for general purpose. They are also subject to certain constraints, in view of safety and usage. Sometimes they are only meant for minor performance. Firmware is the program for the embedded system, and is stored in Read only or Flash memory chips of the computer. They require little memory. A number of techniques are used to recover from errors like memory leaks in software and soft errors in hardware. The embedded systems make use of the Deadlock avoidance algorithms, which is rather new, in improving the fault tolerance feature of the computer system. The current algorithms are of no use, because they only function with single unit resources and because the time cost is quite high. It is not so with the new algorithm. Process management includes program management, which is meant to manage a group of projects dependant on each other. On the other hand, Process management applies the knowledge, skill, techniques etc to evaluate, control and improve processes to satisfy the customer successfully. In a multi task system the CPU is made use of the process only at times and not continuously. It means it is runnable, but not running. A timer interrupt comes into play. The software and hardware systems should work such that the processor and links do not get overloaded, while operating at the peak load. The system should be so designed that in case of necessity the capacity can be increased by installing a new hardware. .To avoid delay in the system, the interacting soft wares should be placed on the same processor. This will ensure better and faster performance. If they are on different Processors, CPU and links will be over burdened. In a real time system the inter processor communication takes place mainly through messages. The software design feature is based on interactions between tasks. This necessitates detailed specification of message interfaces. The following steps give an idea about the feature design. 1. The message interactions among different tasks must be considered. 2. The message interfaces are to be defined in detail. The fields and their values have to be determined. 3. The progress of feature is taken care of by the controlling task through what is called ‘running timer’. Those tasks have to be identified. Embedded software architecture: Out of the many types of the architecture, some of the common types are: 1. Simple control loop: There is a loop in the software. The loop in is in contact with sub-routines which controls a part of hardware and software. 2. Interrupt controlled system: In this, the tasks are controlled by different kinds of events. As an example, an interrupt could be created by a timer in a particular frequency. In these systems, the event handlers are short and simple and they require low latency. The interrupt handler may add longer tasks to a queue structure. Later these tasks may be executed by the main loop. This method takes the system close to a multitasking kernel. 3. Cooperative multitasking: This is almost similar to simple control loop system. The only difference is that the loop is hidden in an API. When the task is being executed, it is said to “run”. When idle it is said to “pause”, meaning ‘no operation’. The merits and demerits match that of the Simple control loop. Adding software is easier in this case. It can be achieved by writing a new task or adding a new queue-interpreter. 4. Multi threading: A timer actuates a low level code to switch between tasks. The kernel of the operating system is at this level. There is a danger of a code damaging the data of another task. That means, the programs should be tested properly and any access to shared data must be controlled by synchronizing, like message queues, or non- blocking synchronization scheme. As a result, organizations prefer to go in for Real Time Operating System. So the programmers can deal with functioning of the equipment and not operating system services, especially in the case of large systems. 5. Microkernel: It is an improvement of Real time Operating System. In general Operating System kernel allocates memory. And the CPU is made to take care of different threads of execution. The kernels succeed when the inter-task communication is fast and fail when it is slow. 6. Exokernals: The hardware and software are available to the programmers. The kernels communicate efficiently by subroutine calls. 7. Monolithic kernels: This is a large kernel suitable for the embedded environment. This is very productive and useful. But it requires more hardware, is more expensive and is more complex and so, not quite reliable. Windows CE and embedded Linux have monolithic kernels. Wireless Routers and GPS Navigation Systems are some of the few fields where this type of embedded system is made use of in spite of the high cost of the hardware, because of other usefulness and dependability . Some of the other reasons are: .Re-use of codes for Firewalls, Device Drivers, Web Servers etc are allowed. The cost of the RTOS is as-per-unit basis. The cost becomes important when used within a product which is common and popular. The hardware can accommodate features which require quick response. It is established that it is better to run application code in user mode. Then it is easy to debug. That will mean that development process is also easy and the code is portable. .Ports for the chipsets of the embedded systems are easily available. .Normally the embedded systems are not as good as the control system while considering real time requirements. However Embedded Linux is quite dependable in this respect. The distribution can be configured without taking into consideration unnecessary functions which consume enormous memory, which can be made better use of. 8 Exotic custom operating systems: Usually the design and architecture as mentioned above ensure timely, safe, reliable and efficient function of the system. If at all anything better is necessary, it can be built as per requirement. A normal operating system with a “display controller” can form a “mechanism controller”. The data between the two is taken care of by the communication system. Additional Software Components: The embedded systems have sophisticated software components apart from the core operating system. They include networking protocols like CAN, HTTP, FTP, TCP/IP, HTTPS etc and storage items like Flash memory and FAT. The systems with audio and video capabilities have their drivers and codes installed. Monolithic Kernels generally include all these software layers. In the case of RTOS the components are installed if needed by the users. Certain methodologies are to be adopted to increase the concurrency of software and hardware development, which will help in reducing time to market the embedded system. Normally software is developed after the manufacture of hardware. However in recent times, by making use of Hardware Description Languages (HDL) and Digital Simulation, both hardware and software can be developed concurrently. This helps in considerable reduction in time to market embedded systems. Hardware-software co-design and co-simulation help in achieving this objective. There is so much improvement in the technology that today software can be developed on models of hardware. Successful modeling and simulation are possible by making models with only the important and necessary details and selecting a correct simulation technique. Conclusion: Embedded systems have become a part of our life. But its developments have been hampered by the lack of reusability and confusing behaviors. The real challenge is on the blend between software and hardware. However, the engineers are trying to put an end to the developing problems by adopting object oriented techniques. Embedded systems make use of sensors, actuators and sophisticated communication links to interact with outside world. Real Time Embedded Systems are advantageous that they are operable at limited memory and process strength of the computer. They are made beast use of from smallest item like digital watch to the control of largest nuclear power plants. In Real Time system, the process is completed within the defined time. In a deadlock neither processor is able to progress. A processor has to give way for the other for smooth functioning. That is to say, only one processor can make use of the resource at a time. The engineers should take suitable steps to avoid deadlocks. Organizations are more interested in Real Time Operating System because the programmers need to consider the functioning of the equipment and not deal with the Operating System. Though monolithic kernels are costly and complex, they are very popular because of their uses. There is the option that the operating system can be designed and constructed as per the requirement. It is very good that hardware and software can be developed simultaneously making use of Hardware Description Language and Digital Simulation. With the result the time to market the system is considerably reduced. There is the option that the operating system can be designed and constructed as per the requirement. References: 1) Wang , Yin ; Kelly, T.; Kudlur, M.; Mahlke, S.; Lafortune, S. Discrete Event Systems, 2008. The application of supervisory control to deadlock avoidance in concurrent softwarehttp://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F4595631%2F4605912%2F04605961.pdf%3Farnumber%3D4605961&authDecision=-203 2) Buchbinder ,Nir ,Yarden - Deadlocks: From Exhibiting to Healing http://www.springerlink.com/content/c0q57141u4542t30/( October 18, 2008) 3) Behara, ravi.s tojo,conkenny, Empathic Knowledge Management: reverse simulation experiments in a learning laboratoryhttp://www.inderscience.com/search/index.php?action=record&rec_id=17606&prevQuery=&ps=10&m=or (2008) 4) Patil, Rahul V ,Boby George, Concurrency, http://msdn.microsoft.com/en-us/magazine/cc546569.aspx(2008) 5) Tools for Real-Time Embedded System Development http://www.pentek.com/tutorials/16_3/RTS.cfm(pipe line vo.16.no 3.) 6) DREIKE, PHIL and JAMES McCOY embedded systems http://www.embedded.com/97/feat9706.htm (1999) 7) Embedded System Design Issues http://www.embedsystems.com/ 8) Real time embedded systems http://www.opengroup.org/rtforum/ 9) Evolution Management and Process for Real-time Embedded Software Systems http://distrinet.cs.kuleuven.be/research/projects/showProject.do?projectID=empress 10) RTOS http://www.lynuxworks.com/ Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“Real Time Embedded Systems Assignment Example | Topics and Well Written Essays - 2500 words”, n.d.)
Real Time Embedded Systems Assignment Example | Topics and Well Written Essays - 2500 words. Retrieved from https://studentshare.org/technology/1561683-real-time-embedded-systems
(Real Time Embedded Systems Assignment Example | Topics and Well Written Essays - 2500 Words)
Real Time Embedded Systems Assignment Example | Topics and Well Written Essays - 2500 Words. https://studentshare.org/technology/1561683-real-time-embedded-systems.
“Real Time Embedded Systems Assignment Example | Topics and Well Written Essays - 2500 Words”, n.d. https://studentshare.org/technology/1561683-real-time-embedded-systems.
  • Cited: 1 times

CHECK THESE SAMPLES OF Real Time Embedded Systems

Remotely Controlled Heating System

Technology advances in microprocessors and computer networks have opened the doors to development of thousands of embedded systems.... embedded systems are designed and engineered towards the manipulation and execution of some specific task.... embedded systems provide high performance and low cost due to their dedication to their assigned task.... Communication technology extended the range of automated control endlessly. The task to be completed is the design of an embedded distributed network system....
6 Pages (1500 words) Assignment

The Relationships in the Unified Modeling Language

hellip; It is exclusively used to visualize, specify, construct and document the artifacts of a software-intensive system, and is appropriate for modeling systems ranging from enterprise information systems to distributed Web-based applications and even to hard Real Time Embedded Systems.... The Unified Modeling Language (UML) is a standard graphical language used for specifying, visualizing, constructing, and documenting the artifacts of software systems as well as non-software systems, and for business modeling purposes....
5 Pages (1250 words) Essay

INFERNO Operating System

hellip; The author states that INFERNO is an Operating System designed for building distributed systems on a network of varied computer systems.... Here, the term varied computing systems involves not just desktop computers but a range of devices such as palmtops, laptops, set-top boxes, and other communication equipment.... The challenge in writing applications for a distributed and hybrid environment is threefold: firstly, the development environments vary greatly, secondly, systems and the way these systems present resources vary greatly and finally a varied network has varying security and authorization policies that may not necessarily synchronize across the network (vitanuaova....
6 Pages (1500 words) Assignment

Measuring Test Quality in Embedded Systems

In the paper “Measuring Test Quality in embedded systems” the author focuses on embedded systems quality and better measuring methodology.... Modern embedded systems have been included with more line codes compared to what was being witnessed a few years ago.... This situation has called for the development of better testing methods that can be used to overcome the mentioned above setbacks experienced by the traditional embedded systems through offering the exact test quality information even in situations where the measuring and testing processes are carried out when the application under investigation is being run in an embedded target board (Conrad 78)Some malfunction software have been introduced as the quality problem culprit in the products of embedded systems....
14 Pages (3500 words) Research Paper

Embedded Systems Applications

The paper "embedded systems Applications" describes creating a methodology for a high-speed radio frequency system, preparing documentation for the implemented system, perform a test strategy and finally evaluate the performance of the embedded network system.... embedded systems have become more connected and they have become very crucial communication channels in digital systems.... here is an existing challenge in constructing a real time system that incorporates both real times in terms of both time and output....
5 Pages (1250 words) Essay

Embedded Systems and Drives

 In the report “embedded systems and Drives” the author analyses the importance of embedded systems.... embedded systems and DrivesIntroduction: With the increasing need for dedicated computer functionalities to solve specific problems, the importance of embedded systems cannot be overlooked.... Embedded computer systems are helpful in solving specific problems.... The author points out that; embedded computer systems make it possible to satisfy specific user's needs....
2 Pages (500 words) Lab Report

Real-Time Systems in Information Technology

This paper mainly conducts a comprehensive analytical research for the real time Operating system's functions, implementation areas and working.... This paper presents a detailed analysis of Real-Time operating systems.... These systems have provided us lot advantages regarding effective working in the industrial areas, common life, and computing.... RTOS applications comprise a number of manufacturing robots, spacecraft, vehicle engine regulators, little-embedded computer arrangement, engineering control as well as a number of huge level computing arrangements (Silberschatz, Galvin, & Gagine, 2002)....
5 Pages (1250 words) Term Paper

Memory Management - Virtual Memory with Paging and Segmentation

Page Replacement in Distributed Virtual Memory SystemsMalkawi, Knox, and Abaza (1992) introduce page-out policies as well as page replacements, in distributed VM systems.... Essentially, some of the replacement policies, the global lately applied or brought as well as least lately bestowed, are implemented versions of the policy, least utilized lately which is recognized in traditional VM systems....
12 Pages (3000 words) Literature review
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us