Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

The Origin and Development of KDE and GNOME

2025-01-18 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >

Share

Shulou(Shulou.com)06/02 Report--

Before introducing KDE and Gnome, it is necessary to introduce the concept of the UNIX/Linux graphical environment. For a user accustomed to Windows, it may be difficult to correctly understand the graphical environment of UNIX/Linux, because it has little in common with pure graphical Windows. Linux is actually based on UNIX, which inherits the characteristics of simple and highly robust kernel design of UNIX, and is no different from UNIX in terms of system structure and mode of operation. To put it simply, you can think of Linux as a special version of a UNIX-like system. We know that in the early days, Microsoft Windows was just an application based on DOS, and users had to enter DOS first and then start the Windows process. From Windows95, Microsoft took the graphical interface as the default, the command line interface was opened only when needed, and the later Windows98/Me actually belonged to this system. But after Windows2000, DOS was completely cleared and Windows became a fully graphical operating system. But unlike UNIX/Linux, which has always been based on a powerful command-line interface, the graphical interface trend swept the operating system industry in the mid-1980s, and the Massachusetts Institute of Technology (MIT) worked with DEC in 1984 to develop a distributed Windows environment on UNIX, the famous "XWindowSystem" project. However, XWindow (please note that it is not XWindows) is not a direct graphics operating environment, but serves as an intermediate bridge between the graphics environment and the UNIX kernel. Any manufacturer can develop a different GUI graphics environment based on XWindow. The purpose of MIT and DEC is to design a simple graphics framework for the UNIX system, so that more commands can be displayed on the screen of the UNIX workstation. They are not particular about the exquisite degree and ease of use of GUI. After all, those who can skillfully operate UNIX at that time are experts who are used to the command line and do not care about the existence of GUI at all. In 1986, MIT officially released XWindow, and since then it has become the standard Windows environment for UNIX. Then, with the establishment of the X Association, which is fully responsible for the development of the project, XWindow entered a new phase. At the same time, many UNIX vendors also develop their own UNIXGUI Windows environment on the XWindow prototype, among which the more famous ones are "OpenLook" jointly developed by SUN and AT&T, and "Motif" developed by OSF (OpenSoftwareFoundation, Open Software Foundation) under the leadership of IBM. On the other hand, some enthusiasts have set up a non-profit XFree86 organization to develop XWindow on X86 systems. This free and fully functional XWindow soon entered the commercial UNIX system and was transplanted to a variety of hardware platforms, and later Linux also benefited directly from the project. Of course, these early XWindow environments were designed to be simple, and many GUI elements mimic Microsoft's Windows, but XWindow has a small innovation: when the mouse pointer moves over a window, the window is automatically activated and users can type directly without clicking, simplifying user operations-a feature that has been fully inherited in later KDE and Gnome.

Because it must be based on UNIX system, XWindow is destined to be an application on UNIX and can not be highly integrated with the operating system kernel, which makes it impossible for XWindow-based graphics environment to have high running efficiency, but its advantage lies in its strong design flexibility and portability. XWindow is logically divided into three layers: the lowest XServer (X server) mainly processes input / output information and maintains related resources. It accepts operations from the keyboard and mouse and gives it to XClient (X client) for feedback, and it is also responsible for outputting the output information from XClient. The outermost XClient provides a complete GUI interface, which is responsible for direct interaction with users (KDE and Gnome are both a XClient), while the connection between XServer and XClient is "XProtocol (X Communication Protocol)", and its task is to act as a communication channel between the two. Although UNIX manufacturers use the same XWindow, because the XClient of the terminal is not the same, the GUI interface of different UNIX products looks very different.

Launch of the KDE project

MIT's XWindow has become the standard of UNIX graphical interface since its launch, but it is divided into two major schools in business applications: one is the OpenLook camp led by Sun, and the other is the Motif of OSF (OpenSoftwareFoundation) led by IBM/HP. After years of competition, Motif finally gained the leading position. However, Motif is only a graphical interface library (Widget-Library) with a window manager (Window-Manager), not a true GUI interface. After negotiation, IBM/HP and SUN decided to integrate Motif and OpenLook, and developed a GUI named "CDE (CommonDesktopEnvironment)" as the standard graphical interface of UNIX. Unfortunately, both Motif/CDE and UNIX systems are very expensive, while Microsoft's Windows developed at an amazing speed and took the lead in occupying a monopoly position in the desktop market, while CDE remained in the field of UNIX for use by root system administrators, and this is still the case today.

In the mid-1990s, Linux, promoted by open source mode, has had a wide range of influence among developers. Although XWindow is very mature and there are many XWindow-based graphical interface programs, they either do not have complete graphical operation functions or are expensive (such as CDE), which simply can not be used in Linux systems. If Linux is to achieve a real breakthrough, a set of completely free and fully functional GUI is very necessary. In October 1996, the developer of the graphic typesetting tool Lyx, a German named MatthiasEttrich, launched the KDE (KoolDesktopEnvironment) project. Unlike previous XWindow-based graphics programs, KDE is not aimed at system administrators. Its user base is locked into ordinary end users. MatthiasEttrich hopes that KDE can contain all the application components that users need for their daily applications. For example, Web browsers, e-mail clients, office suites, graphics and image processing software, etc., bring UNIX/Linux completely to the desktop. Of course, KDE conforms to the GPL specification and runs in a free and open source manner.

After the launch of the KDE project, it quickly attracted a large number of high-level free software developers who hope that KDE can combine the powerful capabilities of the Linux system with a comfortable and intuitive graphical interface to create the best desktop operating system. After painstaking efforts, KDE1.0 was officially launched on July 12, 1998. In terms of the level at that time, KDE1.0 is technically commendable, it has achieved the desired goals, various functions are initially available, developers can already make good use of it. Of course, for users, KDE1.0 is far less approachable than the Windows98 of the same period, and a large number of Bug in KDE1.0 is a headache. But for developers, the launch of KDE1.0 is encouraging, it proves that the open source collaborative development approach of the KDE project is completely feasible, and developers are full of confidence in the future. It is necessary to mention that in the development process of the KDE1.0 version, SuSE, Caldera and other Linux commercial companies provided financial support to the project. In 1999, IBM, Corel, RedHat, Fujitsu-Siemens and other companies also provided financial and technical support to the KDE project. Since then, the KDE project has entered a stage of rapid development and maintained a leading position for a long time. But after 2004, GNOME not only began to surpass the former in technology, but also gained wide support from more commercial companies. KDE lost its dominant position because KDE chose to develop on the basis of the Qt platform, while many commercial companies were deterred by Qt's copyright restrictions.

Qt is a cross-platform C++ graphical user interface library, which is the product of TrollTech, Norway. Basically, Qt is the same type of thing as Motif, OpenLook, GTK and other graphical interface libraries on XWindow and MFC, OWL, VCL, ATL on Windows platform, but Qt has excellent cross-platform features (support for Windows, Linux, various UNIX, OS390 and QNX, etc.), object-oriented mechanism and rich API, as well as 2D/3D rendering and OpenGLAPI. Among the similar graphical user interface library products at that time, Qt was the most powerful. MatthiasEttrich naturally chose Qt as the basis for development when it launched the KDE project, and it was precisely due to the perfection of Qt that the development of KDE progressed smoothly. For example, Netscape5.0 took only 5 days to migrate from Motif to Qt platform. In this way, when KDE1.0 is officially released, what the outside world sees is a GUI operating environment with basic functions, and in the subsequent development, Qt/KDE has always maintained a leading edge. It is necessary to mention that TrollTech is substantially involved in the KDE project. As mentioned earlier, the migration of Netscape5.0 is done by TrollTech programmers, while MatthiasEttrich, the initiator of the KDE project, also left academia to join TrollTech in 1998 and has been the head of the company's software development department, so TrollTech has a very strong influence on the KDE project. After all, KDE development is still done by freelance programmers. As we mentioned earlier, KDE is issued by GPL specification, but the underlying Qt is a commercial software that does not follow GPL, which puts an invisible shackle on KDE and brings possible legal risks. A large number of freelance programmers are deeply dissatisfied with the decision of the KDE project. They think that the use of non-free software development violates the spirit of GPL, so these GNU enthusiasts split up in two ways: some of them went to make Harmonny and tried to rewrite a set of Qt-compatible substitutes. Although the project was relatively simple in technology, it was not supported by the KDE project. The other side decided to redevelop a graphical environment called "GNOME (GNUNetworkObjectEnvironment)" to replace KDE, and a battle for GUI triggered by ideological differences began.

Alternating development of GNOME and KDE

The GNOME project was launched in August 1997 by MiguelDeIcaza, a 26-year-old Mexican programmer. There is a very interesting story about the name of GNOME: Miguel was interested in its ActiveX/COMmodel when he applied for a job at Microsoft, and the name GNOME (NetworkObjectModel) came from it. GNOME chooses to fully follow GPL's GTK graphics interface library, so we generally refer to the two camps of GNOME and KDE as GNOME/GTK and KDE/Qt. Different from Qt, which is based on C++, GTK uses the more traditional C language. Although C does not support object-oriented design, it seems relatively backward, but there were far more developers familiar with C language than C++ at that time. In addition, GNOME/GTK fully complies with the GPL copyright convention, which attracts more free programmers to participate, but because KDE takes the lead and the foundation is dominant, it has always maintained a leading position. In March 1999, GNOME1.0 was launched in a hurry, and its stability was so poor that many people laughed that GNOME1.0 was not as stable as KDE1.0Alpha, while KDE1.1.2 in the same period was far better than GNOME in terms of stability and function. It was not until the launch of GNOME1.0.55 in October that the stability problem was better solved and GNOME regained its reputation. Because of ideological differences, the developers of GNOME and KDE quarreled on the Internet and almost hated each other. But in any case, GNOME took the first step, even though KDE was the default desktop environment for almost all Linux distributions at the time.

The turnaround of GNOME comes from the support of commercial companies. RedHat, the leader of the Linux industry at that time, did not like the copyright of KDE/Qt, and RedHat supported it immediately after the GNOME project was launched. In order to promote the maturity of GNOME, RedHat even sent several full-time programmers to participate in the development of GNOME and established the RedHat Advanced Development Lab with GNOME project members in January 1998. In April 1999, Miguel and another core member of the GNOME project co-founded HelixCode to provide business support for GNOME. The company later changed its name to Ximian, and it became the de facto parent company of the GNOME project. The Evolution mail suite on the GNOME platform was created by the company. After entering the year 2000, a series of major events occurred one after another. first, a group of engineers from Apple set up Eazel to design the user interface and Nautilus file manager for GNOME. In August of the same year, the GNOME Foundation was formally established with the joint efforts of Sun, RedHat, Eazel and HelixCode (Ximian). The foundation is responsible for the development, management and funding of the GNOME project, and Miguel himself serves as the president of the foundation. At this time, GNOME is supported by many heavyweight commercial companies, such as Hewlett-Packard uses GNOME as the user environment of HP-UX system, SUN announces the integration of StarOffice suite with GNOME environment, and GNOME will also choose OpenOffice.org as its office suite, and IBM shares the SashXB rapid development environment for GNOME. At the same time, the GNOME Foundation also decided to use Mozilla as its web browser. The KDE camp also showed no sign of weakness, launching the high-profile KDE2.0 in October of that year. KDE2.0 was the largest free software at that time, including Koffice office suite, Kdevelop integrated development environment and Konqueror web browser in addition to the KDE platform itself. Although these softwares are still rough, KDE2.0 has well achieved MatthiasEttrich's goal of setting up a KDE project. Also this month, TrollTech decided to adopt the GPL convention to release a free version of Qt, hoping to win the support of developers. In this way, Qt actually has a dual license: if the corresponding Linux distribution is distributed in a free, non-commercial manner, then the use of KDE does not have to pay a license fee to TrollTech; but if the Linux distribution is for-profit commercial software, then the use of KDE must be licensed. As TrollTech is a commercial company and has always dominated the direction of KDE, dual licensing is a good way to solve the contradiction between open source and profit. TrollTech claims that the double license system has completely solved the problem of KDE in the GPL convention, but RedHat does not like it. RedHat continues to provide support for the GNOME project, hoping that it can mature as soon as possible. Other Linux manufacturers except RedHat are temporarily on the side of KDE, but they also bundled GNOME desktops in the release.

In 2001-2002, the hot Linux movement began to fall into a low ebb, and almost all manufacturers found that the desktop Linux version could not be profitable, and the lack of ease of use made the industry not optimistic about the future of Linux entering the desktop. But in the server market, Linux is developing rapidly, posing a direct threat to UNIX and WindowsServer. However, developers who adhere to the concept of free software ignore the rhetoric of the outside world, and they have been targeting the Linux desktop, and both GNOME and KDE projects have been developed during this period. In April 2001, GNOME1.4 released, it revised the previous version of Bug, the function is also relatively perfect, but there is still a gap with KDE in all aspects; in August of the same year, KDE developed to version 2.2. In April 2002, KDE jumped to version 3.0, which is based on Qt3.0, has all the functions and excellent use value; two months later, the GNOME camp also launched version 2.0, which is based on the better GTK2.0 graphics library. After entering 2003, KDE and GNOME entered a real technological contest. KDE3.1 launched in January, while GNOME2.4 launched in February, with both platforms striving to improve themselves. It was also the same year that there were a series of major mergers and acquisitions in the Linux business community: in January, Novell announced the acquisition of Germany's SuSELinux, while SuSELinux is the world's second largest Linux commercial company after RedHat; in August, Novell went on to take over Ximian, the parent company of GNOME. These two mergers and acquisitions make Novell a powerful Linux company on a par with RedHat, while Novell and RedHat become two companies that can influence the future of Linux. In the graphic environment, SuSE has always chosen KDE and invested a lot of energy in KDE. After being acquired by Novell, although the desktop distribution of SuSE still focuses on KDE, Novell, which also does not like Qt authorization, has begun to migrate to GNOME. KDE2.0 has a wealth of application software, and its strength obviously exceeds that of GNOME.

After entering 2004, KDE and GNOME still maintain rapid development. KDE camp launched 3.2,3.3 versions in February and August respectively, while GNOME launched 2.6and 2.8in March and September. KDE is very mature by 3.3. it has a lot of applications, including KOffice, Konqueror browser, Kmail suite, and KDE instant messaging, most of which are up to the available standard and are no less functional than Windows2000. And GNOME is during this period of rapid development, the level of GNOME2.8 version is not inferior to KDE3.3, and at this time the technical characteristics of both are very distinct: GNOME pays attention to simple, efficient, faster than KDE; KDE has a gorgeous interface and rich features, and the use habit is similar to Microsoft Windows. In terms of commercial support, RedHat is also a staunch supporter of GNOME, and heavyweight enterprises such as IBM, SUN, Novell, HP and other heavyweights also choose GNOME, while the main supporters of KDE are SuSE, Mandrake and domestic publishers, including China Science and Technology Red Flag and co-creation and open source. In 2005, GNOME began to overtake in an all-round way. 2.10 in March and 2.12 in September made GNOME almost completely transformed. In addition, the introduction of OpenOffice.org2.0, Firefox1.5 and other important software made GNOME like a tiger; KDE launched 3.4and 3.5 in March and November respectively, in which KDE3.5 is also close to the perfect situation, and we think its level is on a par with GNOME2.12. But KDE's commercial support is getting worse. Novell announced in November that all its commercial distributions will use GNOME as the default desktop (there will still be support for KDELibraries), the SuSELinux desktop version will provide the same support for KDE and GNOME, and the community-supported OpenSuSE will still use the KDE system-but everyone knows that GNOME will be the focus of Novell, and KDE is only active in the free free distribution.

At this point, we find a rather dramatic outcome: KDE, which is committed to commercialization, has lost the support of heavyweight commercial enterprises. Although some small and medium-sized Linux enterprises will continue to support KDE because of technical capability problems, its commercial future is limited. However, GNOME, which follows GPL and does not aim at commercialization at all, has achieved great success in this field. Many Linux enthusiasts do not understand why excellent KDE will be treated in this way, in fact, the reason is very simple-no heavyweight company likes to be controlled by others, KDE Qt may not need a lot of licensing fees, but who knows whether TrollTech will charge too much in the future? Since there is a free GNOME to choose from, why not? For this reason, the two largest Linux companies, RedHat and Novell, and SUN have adopted GNOME, and their strong support for GNOME also allows the project to have enough technical assurance to lay a solid foundation for future rapid development. A possible misunderstanding needs to be corrected. Although Novell acquired Ximian, RedHat was not greatly affected. Both parties' contributions to GNOME are shared, because GNOME is distributed under the GPL Free copyright Convention and cooperation is win-win. As for the KDE project, although it has lost the support of these business giants, small and medium-sized Linux vendors who do not have the ability to switch desktops will continue to follow KDE, and KDE still has strong vitality in non-commercial community Linux distributions.

Although there is competition in business, the relationship between developers in the GNOME and KDE camps is not getting worse. On the contrary, they both realize the importance of supporting each other. If KDE and GNOME fail to share applications, it will not only be a huge waste of resources, but also lead to a fundamental split in Linux. In fact, both GNOME developers and KDE developers share the same goal, that is, to develop the best graphics environment for Linux, but they belong to different camps because of different ideas. The commercial competition between KDE and GNOME actually has no impact on developers (only TrollTech will be affected). For a common purpose, the KDE and GNOME camps have gradually supported each other's programs since about 2003-as long as you install the GTK library in the KDE environment, you can run GNOME programs, and vice versa. After more than two years of efforts, KDE and GNOME have achieved a high degree of interoperability, and the programs of the two platforms are completely shared. For example, you can run Konqueror browsers and Koffice suites in GNOME, or you can run Evolution and OpenOffice.org in KDE, but the speed and visual effect of executing local programs will be better. In the next year or two, KDE and GNOME will have a higher level of integration, but the two will probably never merge into one-GNOME or GNOME,KDE or KDE. You may think this is a waste of development resources and may leave users with no choice, but we tell you that this is Linux, which has a very different culture from Windows and MacOSX. What's more, there are more and more free software developers around the world (so you don't have to worry about wasting development resources), and the preferences of Linux users can't always be the same, so there's nothing wrong with keeping two graphics environment projects developing in parallel. As for the developers of the GNOME project and the KDE project, they used to quarrel with each other because of their different ideas, but now they let bygones be bygones, because everyone realizes that they actually need each other, and being together can give them a greater say in front of the hardware manufacturers, thus prompting the manufacturers to provide the corresponding Linux version while launching the Windows driver, and they can learn from each other's excellent designs. Make sure Linux has the best graphical desktop environment.

KDE and GNOME move towards Integration

In 2006, both GNOME and KDE stood at a new starting point. GNOME, which was supported by commercial companies and more freelance programmers, was complacent and set its sights on MacOSX system. Maybe you think WindowsVista's translucent and 3D interface leaves Linux far behind, then we tell you this is an absolute misunderstanding. GNOME can already achieve a similar effect, and Novell has demonstrated it to the outside world in detail in the past few months. Current KDE can also support fairly good translucent and shadow effects, which technologically does not lag behind GNOME. Now, the GNOME project is moving towards a revolutionary version 3.0, while KDE is working on developing 4.0, which also has major technological changes, and these two achievements will probably become a reality in 2007, when Linux systems will have more excellent usability. In other words, the full roll-out of Linux desktop applications is just around the corner, and in addition to the efforts of developers and manufacturers, how to promote to enterprises and individual users and provide training will be the main issues for manufacturers to consider. We happen to stand on such a threshold today.

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Servers

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report