[Open-source celebrity interview] Philippe gerum

Source: Internet
Author: User

Http://www.advogato.org/article/803.html:

Press: This interview is very early, but it helps you understand the background of xenomai.


This is an interview with Philip GROM, ADEOS project's co-leader.


The purpose of ADEOS is to provide a flexible environment for sharing hardware resources between multiple operating systems or implementing multiple instances in a single operating system.


Interview

GNA: Hello, can you give ADEOS a simple explanation that your grandmother can understand? What is the target audience of ADEOS?

PHILIP: for example, you want to write your own kernel to provide very specific services, but you don't want to take the time to implement a set of common tasks required to build a complete o/s, this is because: 1), it will shift your main goal, you are originally focused on a specific technical field; 2) Other kernel hackers may be more competent than you. You can solve this problem by running the kernel in the same hardware environment as the Linux kernel. It will manage tedious tasks such as Boot Process and storage management for you. Therefore, you must find an effective way to share some important hardware resources so that the two kernels can run concurrently on the same machine, it also provides the most adaptive service for each application. ADEOS is such a shared layer.

A direct application of ADEOS is that it runs a real-time system in parallel on the same hardware as Linux. Because real-time applications have a higher priority than Hardware Interrupt Processing in normal Linux, real-time machines must always have the opportunity to handle any triggered interruptions before the Linux kernel, so that real-time processing can be processed as soon as possible. Real-time means it is determined when processing events. ADEOS provides a convenient layer for RTOs to achieve real-time performance. In this sense, ADEOS is a real-time system promoter.

GNA: Introduce yourself. How many developers often contribute to the ADEOS project?

PHILIP: I am 39 years old. I work for openwide, an open source software service and support company. I wrote most of the ADEOS code libraries except for the 2.4 kernel PPC port, it is mainly completed by Wolfgang grandegger. Several others provided us with specific bug fixes and feedback.

GNA: When and why is this project started?

PHILIP: This project has two different phases. The first phase can be traced back to 2000, when Karim published a paper titled "operating systems in an adaptive domain environment, this paper describes a simple and smart solution to share the same hardware resources among multiple kernels on one hardware, then he gave an example to illustrate how to share the interrupt through the abstract method of "Pipeline" on x86 hardware, and distribute the interrupt in sequence according to the priority of different kernels in the pipeline. Therefore, this paper proposes a new approach to interrupt priority so that the real-time extension based on Linux kernel can not use some proprietary real-time operating system patent methods.

Two years later, I was developing a Linux-based GPL real-time extension named xenomai, and the scope of the software patent-related fud had become so intense, it seems impossible to submit any real-time GPL code without patent infringement. This is a big problem with software patents: they are granted to those who believe that they first "invent" patents, and they just "understand" the patents, so these people are either cynical or ignorant, which is enough to make you feel nervous.

In response to this type of intrusive threat, I decided to implement Karam's ADEOS so that my GPL-based xenomai could use it without being blocked by patents. As a result, the first ADEOS patch for Linux 2.4.18 was released in June 6, 2002.

GNA! How is the process going? What is your plan? What do you think about the future of ADEOS?

PHILIP: A few months after the first release, ADEOS has been adopted by the rtai project, a famous Real-Time Linux Extension. As you can imagine, this action significantly promotes the development of ADEOS. Obviously, having a huge user base to test your software will shorten it to maturity.

Since then, the basic scheme of the client kernel priority interruption pipeline has been continuously improved and extended to other resources, such as traps, exceptions and any other events that interest the kernel.

Starting from the first day, this idea was to virtualize key resources in a seamless manner and provide an architecture-independent layer on which an independent kernel can run in parallel with Linux, except x86, ADEOS has been transplanted to IA64, with/without MMU arm and PPC. We also transplanted ADEOS to the 2.6 kernel, which is our main development focus.

As a real-time system implementer, ADEOS currently provides the core services required to run real-time operating systems and Linux on the same hardware. More importantly, currently, the evolution of ADEOS is driven by the next rtai technology called "integration. In this way, we want to integrate vanilla Linux and Its rtai to extend to the symbiotic level, providing strict real-time assurance for common Linux tasks.

In the future, including porting it to other CPU architectures and working on a better componentized code library, I plan to take the core of the basic interrupt pipeline as an independent component, it is used by people who only care about the original Interrupt Processing Service.

GNA: What licenses do you choose for ADEOS? Why?

PHILIP: GPL, because it is a free software. In addition, because the implementation of ADEOS understands and uses the internal operations of the Linux kernel, it complies with the kernel license.

GNA: Can you tell us about the use of ADEOS in the real world?

PHILIP: For the visible part of the iceberg, the most prominent user of ADEOS is the rtai project. This project fully utilizes its pipeline technology in the GNU/Linux environment to implement a mature RTOS. Rtai has many users, including the world-wide implementation of comprehensive Real-time Operating Systems in the industry, and a significant part of the rtai installation base is currently running on Advanced Earth Observation Satellites.

PHILLIPS: Hyades project, depending on the ITEA Program (information technology advances in Europe) it has also contributed to this embodiment of ADEOS's antgate microkernel, which currently enables their real-time systems on large Linux/IA64-based SMP machines.

There are also iceberg, I mean who uses advanced Earth observation satellites for real-time application, in this message there is no big noise for various individuals and invisible parts of the company, and you just happen to know that they are not the same, this is a pretty good sign :. They didn't make a fuss about it, just because it worked well during that period.

GNA: Do you have any industry or institution support? If so, what is the situation?

PHILIP: We just talked about our membership in the Hyades project portfolio. The tylis group has invested in the migration of IA64. Recently, the denx software project generously provided us with a PPC porting test platform.

However, there is no ongoing sponsorship of the ADEOS project by industry or institution.

GNA: Are you looking for contribution? If so, what contribution can be used for this project?

PHILIP: I think this is an active contributor to every free software project. First, we want to port ADEOS to more architectures. We have very limited hardware at hand, so we mainly rely on some opportunities, such as some specific hardware that people give us, or port them on their own. Next, we want people with core software development skills to optimize interrupt pipelines as much as possible, especially for non-x86 architectures with low memory bandwidth. I am sure that in the future, the latter's problems will be very important.

GNA: What tools do you use to develop ADEOS? Why?

PHILIP: For me, my preferred tool is my brain. By the way, this may explain why we have submitted more than 200 patches over the past two years to fix bugs or restrictions in previous versions: ○ ), I personally want to use any existing debugger to develop ADEOS, but I cannot choose the most desired one: When an error occurs somewhere in the interrupt path, the debugger is usually unavailable. The current code library is stable. I prefer to use special methods to solve the interruption Delay Problem of a certain architecture, because the debugger cannot be used and it is too troublesome to process at least several hundred microseconds. As you can see, there is nothing special in my toolset.


GNA: Is there anything else?

PHILIP: Have fun.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.