Board Support Package The BSP for an operating system is an implementation specific code for a given HW board containing the CPU and other peripheral devices such as memory and memory controllers, timers, interrupt controllers, USB, Ethernet etc. In case of a SoC, a large part of the 'board' is inside the IC, on the same silicon chip as the CPU core itself.
The BSP provides an abstraction of the hardware (CPU and peripherals) to the generic OS interfaces. It facilitates communication between the OS and target HW device and includes code to manage memory, handle interrupts, timers, power management, bus abstraction, generic I/O control codes (IOCTLs), and so on.
The BSP is one of the most complex parts of the OS porting and integration effort and contains code for the following essential OS services:
Many more functionalities related to the OS operations are a part of the BSP, which need to be implemented or ported in order to make the OS utilize all features of the underlying SoC.
Device Drivers These are software components that provide an interface to the hardware peripherals connected to the CPU. Each peripheral will have its own device driver. The device driver allows the setting of various parameters associated with the operation of a peripheral, transfer data from CPU to the peripheral or vice-versa, provides polling or interrupts based signalling mechanism for initiation/completion of operation.
It also implements the ISR for the peripheral.For example, the device driver for a camera interface may implement the following functionality:
The driver in turn provides an API through the OS to the applications which is independent of the camera hardware.
Drivers are critical components which operate very close to the OS kernel and run in privileged modes. Any bug in a device driver can cause unwanted operation or even crash the system. In addition, each OS provides its own device driver architecture and developers need to understand and adhere to these specifications.
Middlewar Today's high level operating systems provide a rich set of middleware components which greatly shorten the time taken to develop complex applications. The Middleware components include:
The middleware components may require minor porting to the new HW platform which includes modifications for any changes to device driver interfaces.
Get most out of your technology infrastructure investments with Dell
About CIOL | Media Kit | Site Map | Contact Us | Help | Write to us | Jobs@CyberMedia | Privacy Policy
Copyright © CyberMedia India Online Ltd. All rights reserved. Usage of content from web site is subject to Terms and Conditions.