Interview: Philippe Robin, Linux product manager for ARM
Jul 13, 2006 — by LinuxDevices Staff — from the LinuxDevices Archive — 6 viewsForeword — In this detailed, in-depth interview, Philippe Robin, ARM Ltd.'s product manager for Linux, explains how Linux helps ARM test its processors, the growing adoption of embedded Linux and ARM, and new technologies of possible interest to embedded Linux developers targeting ARM processors.
The interview was originally published at IQ-Online, ARM's online magazine. Enjoy . . . !
Q1 — What is ARM's strategy with regard to the Linux operating system?
A1 — Linux expands across a wide range of markets segments, from networking to consumer and wireless devices. In the recent years Linux has seen a continued growth, particularly in Asia with companies such as NEC, Panasonic, Motorola and Samsung who have made a strong commitment to the Open Source technology.
As such, Linux is an important part of ARM's long term strategy, enabling developers with access to an open development environment to prototype and build products with the latest ARM technology. This stems from many years of investment and collaboration with the open source community, including Linux kernel developers and GNU tools developers, to integrate support for the latest revisions of the ARM architecture.
Q2 — Are there any major advantages that Linux offers to ARM partners?
A2 — Linux is a mature operating system which is well suited for a wide range of platforms and applications. Licensing terms and its wide availability and direct access to source code make it an attractive option for OEMs. The increased level of complexity now built into new products coupled with the capabilities of new microprocessors make Linux a natural choice as a platform operating environment. Existing code running on high-end platforms or desktop environment can also be more easily migrated to embedded platforms.
Q3 — Linux has been used from early stages in the ARM11 core family design to test and validate new core functionality. Is this part of an ongoing effort to contribute to Linux and the evolution of the ARM architecture?
A3 — Linux, along with other operating systems, is used at very early stage of the development of new ARM processors to test and fully utilize new processor's functionality. From an early stage in the design of new processor architecture, Linux is used with models to validate changes made in the operating system itself and exploit new processor capabilities. This takes place at a very early stage in the design cycle, thus ensuring that the operating system makes best use of new hardware capabilities and provides a pre-tested execution environment when new hardware platforms become available.
Q4 — How do you see ARM and Linux developing in the consumer electronics environment?
A4 — Linux has traditionally been very successful with consumer platforms, particularly with set-top box and SOHO equipment. Development cost is a major factor in achieving profitability in this segment, especially in commodity devices such as PVR/VCRs and televisions which have very tight margins. Bringing well-designed, well-connected products to market requires a coordinated development process encompassing all the parties involved: hardware and software developers, product designers, and market researchers. Linux and ARM technology have many benefits in this respect, both offering an extremely rich ecosystem and enabling maximum re-use of components to focus on innovation.
Q5 — How will ARM architecture fit into the development of Linux smartphones?
A5 — ARM is at the heart of wireless devices, currently powering a large section of smartphones. Linux's share of the smartphone market expanded from 13.7 to 25 percent between Q1 and Q2 of 2005, according to Gartner. Such devices need increased level of performance and functionality in terms of power management, built-in security, multimedia and Java capabilities. The ARM11 processor family has had considerable success [in addressing] these needs, illustrated by the recent launch of new ARM11 based phones at the end of 2005 with NEC's N902i and Panasonic's P902i [story] in Japan. The recent launch of ARM Cortex-A8 [story] should enable combining increased performance level and capability while keeping with low-power requirements for this type of platforms.
Q6 — The Consumer Electronics Linux Forum (CELF), which numbers ARM amongst its members [story], is focused on the advancement of Linux as an open source platform for consumer electronics (CE) devices. What benefits can its membership and the open source community expect to leverage from the Forum?
A6 — CELF is made of a large number of companies designing and manufacturing devices which are at the heart of consumer's homes. Their experience is extremely valuable and can contribute to improving Linux capabilities to better meet these challenges. This forum also provides an excellent opportunity to identify key technological aspects which need to be improved with Linux in such environment and join forces in defining and implementing solutions that can be integrated in mainline kernel.
Q7 — How does ARM expect its support for open source initiatives such as CELF and the Open Source foundation to drive adoption of ARMv6 architecture into consumer electronics, as well as the wireless and networking markets?
A7 — The technological advances brought by ARMv6 and ARM's contribution to the open source community and forums facilitate access and development of open source software. Companies and OEMs want the process of building Linux-based platforms to be easier, with faster time-to-market and better price-performance while using latest technology. Availability in the open source of support for the latest ARM technology enables a faster adoption and innovation.
Q8 — How can ARM and its Linux partners such as MontaVista aid OEMs reduce design complexity and speed time-to-market for their next-generation of highly differentiated products?
A8 — Linux partners such as MontaVista can help OEMs in providing an overall platform offering, thoroughly tested and validated. This is illustrated by initiatives such as Montavista Mobilinux program, where a combination of third-party software has been pre-integrated and validated on a range of platforms. This program creates an open framework that helps solve the challenge of integrating disparate hardware and software components from a diverse group of vendors.
Q9 — High performance, integration and power efficiency have been cited as the key reasons developers have adopted ARM11 technology when working with Linux. Are there any other major reasons for adopting the ARM processor cores?
A9 — New ARM11 features such as ASIDs (Application Specific Identifiers), virtually indexed physically tagged (VIPT) caches and exclusive access functions greatly facilitate operating system implementation while increasing the overall performance. This architecture also enables the design of symmetric multiprocessor platforms, with platforms such as the MPCore, for which Linux is a natural choice.
Q10 — In LinuxDevices 4th Annual Embedded Linux Market Survey it said “embedded Linux developers will base more projects on ARM than x86 processors in future projects”. Why is the ARM architecture so appealing here?
A10 — ARM's partnership model and the ARM Connected Community program give a greater choice to developers. With over 1.6 Billion ARM based devices shipped in 2005; ARM is an attractive platform to build devices combining low power and high performance.
Q11 — Consumers want devices that interoperate and work together so they can share content. How will ARM and Linux pave the way for this ease of use?
A11 — Conformance to standard interfaces is essential to enable code re-use and maximize software investment. Developed in collaboration with external companies, the Application Binary Interface (ABI) for the ARM Architecture defines a collection of standards to regulate the inter-operation of binary code, development tools, and a spectrum of ARM core-based execution environments from bare metal to platform operating systems such as ARM Linux.
Q12 — There is a wide variety of platforms available today. Do you think the increased complexity in evolving the Linux kernel code is a serious challenge to its development?
A12 — Embedded platforms range from custom hardware to off-the-shelf hardware and specialized tools, and in this respect offer a much wider diversity than what can be found on the desktop or servers. While developers can download and develop support for new hardware components very easily, the integration of such developments in mainline kernel is strictly controlled by a group of maintainers before being integrated into the main kernel source tree. New developments and directions are discussed and reviewed through public forums. Linux is dynamic by nature and new projects and developments can be initiated and completed very quickly (such as the recent development of GIT source management tools). The popularity and success of such initiative will determine their acceptance by the community into the main source tree.
Q13 — Are there any real issues with the support of the legacy code in Linux which could hobble its development?
A13 — The open source software (OSS) world is quite often made up of several components, or modules, and packages from many open-source community projects, integration of those components can produce more complex issues around maintenance and support. Customers managing an OSS deployment need to be concerned about the sources of technical support and management of OSS licenses. There are now a number of companies and organizations capable of providing consulting and systems integration.
Q14 — Is the increased pressure put on shortening development cycles a challenge? Especially as the Linux kernel architecture is slow to adopt new features?
A14 — Shorter product development cycle is a considerable challenge for both hardware and software developers. This increases the need for standard building blocks to replace monolithic legacy code bases that are often in place. In this respect, the distributed nature of open source developments suits this model quite well and makes it quite responsive to support new architecture functionality and associated technology. This however requires considerable effort to verify compatibility, certification, and integration of all such components.
Q15 Do you see any inherent problems in restructuring/redesigning portions of the Linux kernel?
A15 — The development of microkernel architectures in the early 90's has enabled projects such as the GNU/Hurd project based on the Mach microkernel and the L4 project which can implement a high-performance conventional Linux operating system on a microkernel. Such systems used different paradigms and provide fundamental changes to the way the Linux kernel is currently structured. Less fundamental changes and redesign take place into the kernel as the system evolves, these have to be done in ways which do not compromise the system integrity and stability, therefore requiring more time. Most recent changes have seen a stronger focus on support for real-time capabilities and memory footprint, which are key factors for embedded platforms.
Q16 — ARM is one of the founders of the Linux Phone Standards (LiPS) Forum [story]. Linux in phones, as elsewhere, is reliant on standards that ensure interoperability and guard against fragmentation. How do you see LiPS ensuring this?
A16 — ARM is an associate member of LiPS. This forum is a consortium founded by Linux telephony experts formed to standardize areas of Linux that most directly influence the development, deployment and interoperability of applications and services on fixed, mobile and converged Linux devices. This forum includes a number of operators who play a crucial role in the telephony industry and can directly impact and drive the definition and adoption of standards, helping making Linux successful in the telecom market. In this respect, this initiative complements existing efforts from other groups such as CELF or OSDL MLI initiative.
Q17 — What can we expect from ARM's future roadmap for Linux?
A17 — Adoption of new technology such as Thumb-2 [story] which is featured in all ARMv7 architecture-based processors will be a key element in enabling Linux to scale to a wider range of platforms. The combination of Linux and Thumb-2 will enhance the level of performance, energy efficiency, and code density for a wide range of embedded applications. Support in ARM and GNU tools is already available, this will be followed by Linux kernel and application support to coincide with the availability of new ARMv7 based processors.
The adoption of MPCore [story] and symmetric multiprocessing platforms should also enable Linux to target a broad range of applications in the consumer entertainment and convergence devices requiring high performance and low power consumption. We should see further developments with this, building on Linux and ARM's respective strengths.
Copyright 2006 (c) ARM Ltd. All rights reserved. Reproduced by LinuxDevices.com with permission.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.