Document directory
- 1 android
- 2 Linux mobile phone
- 3 openmoko
- 4 frameworks
- 5. Who does Android affect?
- 6 conclusion
I spoke with a friend on MSN yesterday. Their company was originally working on a GTK-based Linux mobile phone framework. After talking, they realized that their company had not made GTK and changed to the android solution. After talking for a while, this friend is optimistic about Android. Finally, I said, "Android is likely to beat Linux phones with Linux. After the emergence of Android, I am afraid many people will lose their determination to continue working on the GTK solution ".
1 android1.1 Introduction
Android is a mobile phone software stack released by Oha, including the operating system, middleware, and main applications. Oha is an industry alliance dominated by Google. Because Google is too famous, we usually refer to Android as a Google solution. The Android-based mobile phone is regarded as gphone, and HTC's first Android-based mobile phone is regarded as G1.
Android uses the Linux kernel, but it does not use any Linux GUI solution. Its application framework and GUI library are implemented in Java. There is a Java virtual machine named Dalvik in Android, And the Java program is interpreted and run by the virtual machine. Android applications must be developed in Java.
1.2 Discussion
OnOld textAndroid:
- Google currently only opens the SDK, that is, the development interface of the application software, without the source code of open middleware.
- The android design is very beautiful, but whether it is practical remains to be tested in practice.
The first problem no longer exists, because Android opened all the source code in May, and I myselfCompiled. Regarding the second question, I mainly suspect that Java's efficiency is not suitable for Embedded environments. But according to friends who have used G1, the speed is acceptable.
Some netizens say that Android-based development costs are high, for example, there is no input method framework. However, I heard from my friends that android plans to launch the Input Method Framework in May. Su Zhe, who is doing scim, should be at Google now, but he should not be doing android. Although software plans are generally postponed, Google still has a certain degree of reliability.
2 Linux mobile phone
Although the market share of Linux mobile phones is still small, there are many platforms, alliances, and frameworks for Linux mobile phones. With csdnNetizensI once said that I would like to compare the similarities and differences between the seven Linux mobile platforms. The seven mentioned by this friend are maemo, limo, Gpe, Android, phosphatase, lips, and Oma. Lips is no longer running. Maemo is still a mid solution. GPE is a PDA environment. I have never seenOMAReleased solutions. Recently, Samsung canceled a mobile device using this platform.Rumors.
In fact, there should be many other Linux companies or organizations. We also hear new solutions from time to time, suchJalimoSimilar to Android, Java framework is implemented on Linux kernel. Many companies in China have done QT or GTK solutions, but they are relatively low-key, with few open sdks. In fact, the iPhone should also be a close friend of Linux. Mac OS X of the iPhone is also a Unix-like system. But I don't think Apple recognizes this relative.
The GUI solutions for Linux mobile phones mainly include GTK and QT. Qtopia phone edition (qpe) of QT was originally commercial software, and GPL was open-source since version 4.3. The asu solution of the openmoko platform integrates QT. GTK has always been an open-source software maintained by open-source organizations and is more open than QT. Therefore, many platforms have chosen GTK.
Is Android a Linux mobile phone? From the perspective of development technology, I think it is not. I think iPhone is closer to Linux mobile phones than Android in terms of technology.
3 openmoko
Openmoko is the earliest open-source mobile phone solution, and is still the most open-source solution. Software to hardware, circuit diagram to structural diagram are all open. Currently, openmoko mainly has three sets.Software Solutions: OM-2007.2, ASU, and FSO. I have used these three solutions on freerunner. From the perspective of common users, the released versions of these three solutions are not like normal mobile phones.
Of course, this cannot blame openmoko. Because openmoko is intended to be learned and tested by developers. I think freerunner is just a joke. Do not show the semi-finished products to common users; otherwise, they do not need to become finished products.
Sometimes I think openmoko developers are still developing based on the idea of PC software, rather than mobile phones. For example, none of the openmoko solutions will prompt the user not to insert a SIM card, but the network cannot be found. I saw in gsmd (background communication module) that the buffer length of an analysis at command is defined as 64 K (mlparse_buf_size), and the buffer will not be released after being allocated at startup. This is a waste. I used to implement a function similar to gsmd in a system with a total of 64 K memory. This is a forwarding system. If you do not need to consider the cache of the forwarding system, 32 K is enough.
3.1 OM-2007.2
OM-2007.2 is a GTK-based solution, which is also the initial solution of openmoko. In my opinion, besides the inconvenience in interface operations, the lack of functions, and sometimes the inability to receive calls, it is still good. However, openmoko did not insist on improving this solution, but implemented ASU.
The OM-2007.2 background communication module is gsmd. The background communication module is a software module that communicates with the GSM module through AT commands. Other modules of the system use the communication functions provided by the GSM module through the background communication module. Gsmd provides services to other processes through socket.Ryan PaulAccording to the limitations of GTK and the imperfection of gsmd, openmoko switched to the QT solution. I think this is not a good reason. gsmd is a very small module (12323 lines of code) and it should not be too difficult to improve it. As for the limitations of GTK, from the perspective of many excellent projects based on GTK, even if there are any limitations, it is not from the GTK itself.
3.2 ASU
ASU is also called OM-2008.8. Openmoko's latest makefile uses openmoko-Asu-image by default as the build target. ASU is short for Volume l software update or August Software Update. It is planned to be released in December April and later in December August.
The backend communication module of ASU uses the qpe communication component. In addition to QT, ASU also integrates some components of the Enlightenment E17 desktop environment. Enlightenment is also a Linux desktop environment, which has a GUI library called EFL. EFL is short for enlightenment Foundation libraries.
ASU claims to support both GTK, QT, and EFL development. But the application developed on the OM-2007.2, if the openmoko framework or gsmd is used, can't run in ASU.
3.3 FSO
FSO is the abbreviation of freesmartphone. org with FSO. FSO is a mobile phone framework that does not contain the UI. It encapsulates all mobile phone functions unrelated to the UI and provides calling interfaces through the D-bus.
FSO is not limited to openmoko. ItsTargetIs to develop an open, unified, and independent mobile phone middleware specification. I really appreciate this practice of focusing on one thing. FSO is clearDevelopment PlanWhich functions each milestone can implement. It has been released to milestone4.
The FSO openmoko image contains a reference UI called zhone. Zhone uses a window manager called illume. Illume is a component of enlightenment.
The above two images are selected from the openmoko wiki. In fact, in the latest FSO milestone4, zhone has not yet implemented the dialing function.
4 frameworks
An article on FSO recommendationsArticleThere is a saying:
When someone uses a framework-or, for that matter, a programming language-what they are really doing is delegating demo-making to someone who they think will have better judgement.
When using a framework, we entrust the framework designer to help us make a decision. We believe that this designer is more familiar with the fields involved in the framework and can make better decisions. A good framework should tell users how to do it, rather than giving users too many choices, making users at a loss.
The author of this article believes that it is not a feature but an error to provide both scripting languages to users at the same time. If four scripting languages are provided at the same time, it is a nightmare. Openmoko has three immature software solutions. The ASU provides three application development methods: GTK, QT, and EFL. Is this a feature, an error, or a nightmare? In fact, it's just a last resort.
The most basic requirement of the Framework is consistency and self-consistency. Further requirements include comprehensive and easy-to-learn documents.
Compared with openmoko, Android provides a relatively stable and well-documented framework. If you are an application developer, do you choose Android or openmoko?
In fact, openmoko and Android may be inappropriate. If openmoko's goal is only to provide developers and students with a hardware and software platform for learning and researching Linux mobile phones, openmoko is doing well. Many people are porting android to the openmoko hardware platform.
5. Who does Android affect?
In a relatively long period of time, andoid and WM, Symbian, and iPhone do not directly conflict. WM, Symbian, And iphone all have their own consumer groups. However, Android directly affects other Linux Mobile Phone Solutions.
Because Android is a completely open-source solution. Open source and open are the main features of other Linux Mobile Phone Solutions. When Android uses Java, it will certainly suffer a certain amount of performance loss, but it has gained a consistent and simple programming interface, reducing the difficulty of application development. Compared with Android, GTK application development is much more difficult.
Android will combat other Linux Mobile Phone Solutions in two aspects:
Android will differentiate Linux mobile phone system developers.
Linux mobile phone system development is very difficult. There is a funny section on the Internet.Comment:
"Last year, mobile phone design companies in Beijing visited a large circle, including dexin, Lenovo, cect, and many smaller companies. When talking about using Linux as a mobile phone, the CTO was always in tears. a cto from a large company took my hand and beat my chest and said: 70 people, 8 months, 8 months, nothing has been done. As a result, the Android platform I used was insufficient ."
After Android is fully open-source, how many companies and open-source developers will stick to the difficult and promising Linux Mobile Phone development?
Android will attract a large number of application developers.
In fact, the ultimate goal of various Linux alliances and forums is to develop a unified Linux mobile app platform. After Android provides such a platform, other organizations lose their original sense of mission to a certain extent. Application developers will naturally choose platforms that are easy to learn and have great influence. A platform is more powerful when more developers are gathered, attracting more developers. Can we come up with a Linux platform that exceeds android in terms of accessibility and influence?
6 conclusion
There is no difference between Android and Linux mobile platforms. The fierce competition in technology is conducive to consumer and technological progress, but it is a bit cruel to the number of developers involved.
I am inOld text"In the mobile status, humans access the huge network of the information society through the mobile phone terminal; the Information Society publishes content to humans through the mobile phone platform ". In fact, Google focuses on the information access platform, rather than the design and manufacture of mobile phones. This is why Google has made the solution completely open. However, Google's strong intervention does have a certain impact on the original ecological environment.
Because goolg is planning an information platform, many Android applications have high bandwidth requirements. Although WiFi can play a complementary role, the current network environment is not suitable for the popularization of Android mobile phones. Therefore, other Linux Mobile Phone Solutions still have some development time and space. I hope there will be a consistent, self-consistent, well-documented, and easy-to-learn open-source Linux mobile phone solution during this period.
Last night, I watched Hall's mobile castle with my son. The little girl Sophie was cursed by the wild witch for helping Hall and became her mother-in-law. I think if I am cursed and lose a lot of time, what will I do in the rest of the time? The answer is simple. Just hurry up and do what you must and want to do.