freesmartphone.org is concerned with Linux-based mobile devices, such as SmartPhones. These are devices which typically provide both Mobile phone and PDA functionality under one cover and are based on the Linux Kernel.
Smartphones share many characteristics with other types of portable embedded devices. The freesmartphone.org collaboration will attempt to leverage the work of other groups involved in such linux based portable embedded devices, e.g. PDAs, internet tablets, set-top-boxes, network routers, network attached storage devices, and the like.
freesmartphone.org is focused primarily on middleware services that are independent of the user interface layers of a particular platform. Such services can be utilized by user interfaces implemented with environments running on the X-Window system, environments running directly on frame buffer devices, and environments based on other user interface paradigms e.g. voice.
With today’s technology, mobile equipment design is driven largely by power issues. The mobile phone must balance the requirement for continuous connectivity with the users desire for long battery life while still performing increasing numbers of functions within a single device. freemartphone.org is concerned with providing the middleware services that enable designers to meet such challenging user needs in mobile equipment based on the Linux kernel.
freesmartphone.org expects to build on the success of D-Bus as a practical and relatively lightweight mechanism for system level and session level IPC. It is expected that most of the services of the Mobile Terminal layer resulting from the freesmartphone.org collaboration will be provided through D-Bus interfaces and methods. Much of the early work of the freesmartphone.org collaboration will be focused on specifying a full set of D-Bus interfaces and methods necessary to manage the mobile terminal layer and how one or more daemon processors can be optimally partitioned to achieve this end.
Available Service Domains
FSO supports many of your service needs on modern interconnected devices, including solutions for the following domains:
- Hardware Abstraction
- Time, Date & Location
- Data Storage
- User Preferences
Lightweight & Modular
FSO is lightweight and modular, thanks to a very flexible fine grained plugin architecture – you don’t have to pay for features you are not using. FSO has been optimized for low memory and power consumption and a reasonable runtime footprint.
The reference implementation of FSO is written in Vala, a modern object oriented programming language that compiles to C – thus giving you the maximum performance, while being clear, concise, and maintainable.
Holistic Approach in Mind
In contrast to the multitude of abstractions on typical Linux-based middleware solutions, FSO follows a holistic approach. It offers DBus-APIs all over the place, making the middleware easily accessible and innovation friendly.
With FSO, you no longer have to reinvent the middleware when all you want to do is write a new exciting application.
Extensive Hardware Support
FSO runs on any hardware that ships with a modern Linux kernel. It is dedicated to run on top of a open GNU/Linux userland, but can also be useful in foreign hardware environments.
No Strings Attached
Service worlds usually are “greedy”, forcing you into using a dedicated set of tools, languages, or libraries. FSO comes without any strings attached – its APIs can be used from all kinds of languages and libraries.
Special Interest Domains
Due to its open nature and liberal license – being mostly a community driven project – FSO is a good choice for several special interest domains, including machine-to-machine communication, home automation, and of course research and education.