關於Linux的桌面環境(轉)
關於Linux的桌面環境(轉)[@more@] 目前使用Linux主要在於伺服器端。在Internet上有很多伺服器都在使用Linux。但是,一個作業系統要想得到普及,並佔據一定的市場份額,必須要使非計算機專業人士都可以輕鬆掌握這種系統。而Linux作為一種類Unix作業系統,對它的操作一般都是透過複雜的Shell進行的。因而,應該有一種簡便易學的圖形使用者介面( Graphics User Interface GUI),使使用者使用滑鼠就可以完成大多數工作。
在Linux中,GUI由以下幾個部分組成:
• 視窗系統—組織螢幕上的圖形輸出並執行基本的文字和繪圖功能。
• 視窗管理器—負責對視窗的操作(比如最小化、最大化、關閉按鈕的形狀,視窗邊框外
觀等)以及輸入焦點的管理。
• 工具包—帶有明確定義的程式設計介面的常規庫。
• 風格—指定應用程式的使用者介面外觀和行為.
在Linux發展的初期,眾多的計算機專家為它貢獻了多種圖形使用者介面,如FVWM95,AfterStep等。這些介面模仿了Windows 95、Macintosh,NestStep,Amiga,Unix等桌面環境。這些GUI在一定程度上來說只是其他圖形介面的仿製品,不能提供優秀的作業系統所需要的特性。其後,自由軟體社群的一批計算機專家開始了K D E專案(K Desktop Environment,K桌面環境),目的是提供一個開放原始碼的圖形使用者介面和開發環境。該專案取得了極大的成功, KDE成為許多Liux釋出版本的首選桌面環境。GNU/Linux專案因此而得到蓬勃發展。
但是,KDE是基於Troll Technologies公司的Qt庫的。Qt庫是一個跨平臺的C++類庫,可以用於多種Unix、Linux、Win32等作業系統。Qt並不是遵從GPL或LGPL協議的軟體包。它的許可條件是:如果使用它的免費版本開發應用程式或程式庫,則所開發的軟體必須開放原始碼;如果使用它的商用版本,則可以用以開發私有的商用軟體。另外, Q t庫是屬於Troll公司的產品,一旦Troll公司破產,或者被收購,自由軟體事業將受到嚴重打擊。
1997年由墨西哥國立自治大學的Miguel de Icaza領導的專案組開始了Gnome開發計劃。Gnome是GNU Network Object Model Environment(GNU,網路物件模型環境)的縮寫。該計劃的最初目的是建立一種基於應用程式物件的架構,類似於微軟公司的OLE和COM技術。然而,隨著專案的進展,專案的範圍也迅速地擴大;專案開發過程中有數百名程式設計師加入進來,編寫了成千上萬行的原始碼.現在,Gnome已成為一個強勁的GUI應用程式開發框架,並且可以在任何一種Unix系統下執行。Gnome使用的圖形庫是Gtk+—最初為了編寫GIMP而建立的一套構件庫,它是基於LGPL建立的,可以用它來開發開放原始碼的自由軟體,也可以開發不開放原始碼的商用軟體。Gnome的介面與KDE的介面是類似的(Gnome的目的之一就是建立一套類似KDE的桌面環境),熟悉KDE的使用者無需學習就能夠使用Gnome。由於以上幾個原因,Gnome已經成為大多數Linux釋出版本的首選桌面環境.
從使用者的角度看, Gnome是一個整合桌面環境和應用程式的套件。從程式設計師的角度看,它是一個應用程式開發框架(由數目眾多的實用函式庫組成)。即使使用者不執行Gnome桌面環境,用Gnome編寫的應用程式也可以正常執行,但是這些應用程式是可以很好地和Gnome桌面環境整合的。Gnome桌面環境包含檔案管理器,它用於任務切換、啟動程式以及放置其他程式的“皮膚”、“控制中心”(包括配置系統的程式以及一些小東西)等。這些程式在易用的圖形介面背後隱藏了傳統的UNIX Shell。Gnome的開發結構使開發一致的、易用的和可互相操作的應用程式成為可能。
在Linux中,GUI由以下幾個部分組成:
• 視窗系統—組織螢幕上的圖形輸出並執行基本的文字和繪圖功能。
• 視窗管理器—負責對視窗的操作(比如最小化、最大化、關閉按鈕的形狀,視窗邊框外
觀等)以及輸入焦點的管理。
• 工具包—帶有明確定義的程式設計介面的常規庫。
• 風格—指定應用程式的使用者介面外觀和行為.
在Linux發展的初期,眾多的計算機專家為它貢獻了多種圖形使用者介面,如FVWM95,AfterStep等。這些介面模仿了Windows 95、Macintosh,NestStep,Amiga,Unix等桌面環境。這些GUI在一定程度上來說只是其他圖形介面的仿製品,不能提供優秀的作業系統所需要的特性。其後,自由軟體社群的一批計算機專家開始了K D E專案(K Desktop Environment,K桌面環境),目的是提供一個開放原始碼的圖形使用者介面和開發環境。該專案取得了極大的成功, KDE成為許多Liux釋出版本的首選桌面環境。GNU/Linux專案因此而得到蓬勃發展。
但是,KDE是基於Troll Technologies公司的Qt庫的。Qt庫是一個跨平臺的C++類庫,可以用於多種Unix、Linux、Win32等作業系統。Qt並不是遵從GPL或LGPL協議的軟體包。它的許可條件是:如果使用它的免費版本開發應用程式或程式庫,則所開發的軟體必須開放原始碼;如果使用它的商用版本,則可以用以開發私有的商用軟體。另外, Q t庫是屬於Troll公司的產品,一旦Troll公司破產,或者被收購,自由軟體事業將受到嚴重打擊。
1997年由墨西哥國立自治大學的Miguel de Icaza領導的專案組開始了Gnome開發計劃。Gnome是GNU Network Object Model Environment(GNU,網路物件模型環境)的縮寫。該計劃的最初目的是建立一種基於應用程式物件的架構,類似於微軟公司的OLE和COM技術。然而,隨著專案的進展,專案的範圍也迅速地擴大;專案開發過程中有數百名程式設計師加入進來,編寫了成千上萬行的原始碼.現在,Gnome已成為一個強勁的GUI應用程式開發框架,並且可以在任何一種Unix系統下執行。Gnome使用的圖形庫是Gtk+—最初為了編寫GIMP而建立的一套構件庫,它是基於LGPL建立的,可以用它來開發開放原始碼的自由軟體,也可以開發不開放原始碼的商用軟體。Gnome的介面與KDE的介面是類似的(Gnome的目的之一就是建立一套類似KDE的桌面環境),熟悉KDE的使用者無需學習就能夠使用Gnome。由於以上幾個原因,Gnome已經成為大多數Linux釋出版本的首選桌面環境.
從使用者的角度看, Gnome是一個整合桌面環境和應用程式的套件。從程式設計師的角度看,它是一個應用程式開發框架(由數目眾多的實用函式庫組成)。即使使用者不執行Gnome桌面環境,用Gnome編寫的應用程式也可以正常執行,但是這些應用程式是可以很好地和Gnome桌面環境整合的。Gnome桌面環境包含檔案管理器,它用於任務切換、啟動程式以及放置其他程式的“皮膚”、“控制中心”(包括配置系統的程式以及一些小東西)等。這些程式在易用的圖形介面背後隱藏了傳統的UNIX Shell。Gnome的開發結構使開發一致的、易用的和可互相操作的應用程式成為可能。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-959161/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- UKUI 桌面環境登陸 Arch Linux!UILinux
- 輕鬆使用 Linux Equinox 桌面環境LinuxUI
- 關於SVN伺服器的環境搭建及使用(轉)伺服器
- 【Linux】gnome桌面環境切換KDE PlasmaLinuxASM
- 推薦!5款Linux常用桌面環境Linux
- 常見的Linux桌面環境,你都知道哪一個?Linux
- 5款Linux桌面環境,你都瞭解嗎?Linux
- 關於“心流”與“環境”
- 關於:laravel開發環境Laravel開發環境
- 盤點7款應用最廣泛的 Linux 桌面環境Linux
- 開始使用 Budgie 吧,一款 Linux 桌面環境Linux
- 【轉載】基於 Docker 的 PHP 整合環境 dnmpDockerPHP
- (一)Linux環境的學習環境的搭建Linux
- Linux的shell環境Linux
- 使用者體驗,使用Xfce Linux桌面環境的8個理由!Linux
- 5款Linux桌面環境推薦,你最愛哪個?Linux
- linux 環境下 elasticsearch 及 python 相關庫的使用LinuxElasticsearchPython
- [20240804]關於kitty設定與linux LANG環境設定問題.txtLinux
- linux 建立體積小的桌面環境以執行微信和WPSLinux
- System76使用Rust為Linux構建一個新的桌面環境RustLinux
- 如何在 Arch Linux 上安裝和設定 KDE 桌面環境?Linux
- [轉]關於在ULtraEdit環境下把某個字元替換為回車的方法字元
- Linux環境配置Linux
- 生產環境VS開發環境,關於Kubernetes的四大認識誤區開發環境
- Linux 上部署 docker,基於 docker 搭建 lnmp 環境LinuxDockerLNMP
- Centos 7 安裝GNOME桌面環境CentOS
- 安裝gnome桌面環境配置工具
- Ubuntu 16.04 安裝 Gnome 桌面環境Ubuntu
- Kali Linux的Pwn環境搭建Linux
- 關於python Miniconda的指令碼安裝及 環境控制Python指令碼
- openEuler網路配置+換源+桌面環境ukui等基本環境部署UI
- mall在Linux環境下的自動化部署(基於Jenkins)LinuxJenkins
- 關於Python3中venv虛擬環境Python
- linux web環境部署LinuxWeb
- linux環境部署redisLinuxRedis
- Linux搭建Java環境LinuxJava
- Luckfox Pico Ubuntu server 安裝桌面環境UbuntuServer
- DoraCloud搭建8卡GPU雲桌面環境CloudGPU
- 關於使用springboot的application.yml切換dev配置環境Spring BootAPPdev