Radio Interface Layer
The Radio Interface Layer (RIL) provides an interface that handles the communication between the CellCore system software and the radio hardware. The RIL provides an abstraction layer that enables you to create a single driver that can be implemented on different radios. The RIL abstracts the details of the hardware dependent components of a device to enable OEMs to integrate a variety of modems into their equipment, offering an opportunity for product differentiation. This single driver then allows all of the radios to work under a single set of CellCore components.
RIL consists of two modules: the RIL proxy and the RIL driver. The proxy layer is a dynamic-link library (DLL) that manages callback notifications and inter-process function calls into the driver layer. CellCore modules use the RIL application programming interface (API) by linking to this proxy DLL.
The RIL driver layer is implemented as a device driver that is managed by the Device Manager (Device.exe). The RIL driver services system requests for radio functionality, including voice, data, and Short Message Service (SMS). The RIL driver also notifies the system of changes in the radio state, such as coverage, signal strength, and incoming calls.
The RIL proxy is provided by Microsoft. You have to write a customized RIL driver to work with your radio hardware. Microsoft provides a sample implementation of a RIL driver that works with several Global System for Mobile Communication (GSM) radios.
- RIL Architecture
Provides an overview of the two key architectural components of RIL: the RIL proxy and the RIL driver.