1. 程式人生 > >計算機基礎與linux文件系統

計算機基礎與linux文件系統

sta 文件的 通信 pix AMF 臨時文件 管理命令 系列 打印

1、描述計算機的組成及其功能。

        計算機主要有五個部分組成:                   
                    (1)控制器:CPU —>協調計算機各部分工作及內存與外設的訪問; 
                    (2)運算器:CPU —>對數據進行運算處理;         
                    (3)存儲器:  —>存儲程序和各種數據         
                                            (a)內部存儲

                                                                內存(RAM):因硬盤與CPU的運算速度差別較大,內存從硬盤中提取數據給CPU,用來提高運算速度,斷電後數據會丟失;

                                            (b)外部存儲

                                                                硬盤、U盤、光驅等(ROM):存儲數據,斷電後數據不會丟失;
                    (4)輸入設備:鍵盤、網卡等; 將數據輸入電腦中。
                    (5)輸出設備: 顯示器、打印機等;將電腦中的數據輸出。

2、描述內核功能以及作用:

                內核是給應用程序提供接口的程序;是操作系統的核心 ;
                                    主要的作用有:設備管理、硬件驅動管理、網絡管理、文件系統管理、內存管理、安全管理等等;

3、按系列羅列常見Linux的發行版,並描述不同發行版之間的聯系與區別。

        大體主流的Linux發行版主要有三種,Redhat、S.u.S.E、Ubuntu;這三種是屬於三個分支:

                         1、Debian,--->他的二次發行版有Ubuntu,Knopix等,三次發行版流行的有mint,Debian是唯一一支社區發行版,沒有商業組織包裝發行;

                         2、Slackware--->他的二次發行版有S.u.S.E(SLES--SUSE Linux企業版),三次發行版流行的有OpenSuse(Suse的社區版),

                         3、RedHat --->他的二次發行版有Fedora,CentOS原先是參照Redhat發行版重新編譯的社區版,後來被RedHat收購,RedHat9.0 後分為兩支:

                                    RedHat Enterprise Linux:RHEL----RedHat的企業版,

                                    Fedora Core,RedHat的社區版,每半年發行一次;

4、描述常見的開源協議(GPL,LGPL, BSD,Apache等)以及開源協議的區別

             GPL:是GNU General Public License的縮寫,即GNU通用公共許可證;它規定了如果一個程序員開發的程序使用了遵循GPL協議的程序中一段代碼,那麽這個程序也必須要遵循GPL協定,公開源代碼;

             LGPL:是寬松的GPL協議,采用LGPL的代碼,一般情況下它本身就是一個第三方庫,這時候開發人員僅僅用到了它的功能,而沒有對庫本身進行任何修改,那麽開發人員也不必公布自己的商業源代碼。但是如果你修改了這個庫的代碼,那麽對不起,你修改的代碼必須全部開源,並且協議也是LGPL,但除了庫源碼之外的商業代碼,仍不必公布。

             BSD:比GPL和LGPL更寬松,即程序員使用了遵循BSD的程序的代碼後,這個程序必須遵循三個原則:

                                    a、如果再發布的產品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協議。

                                    b、如果再發布的只是二進制和庫軟件,則需要在軟件的文檔和版權聲明中包含原來代碼中的BSD協議。

                                    c、不可以用開源代碼的作者、機構名字和原來產品的名字做市場推廣。

                Apache:和BSD協議類似,如果你修改了代碼,需要在被修改的文件中說明。在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協議,商標,專利聲明和其他原來作者規定需要包含的說明。

5、描述Linux的哲學思想,並按照自己的理解對其進行解釋性描述。

                            1、一切皆文件;所有的資源全為文件,包括硬件設備,通信接口等;

                            2、組合小程序完成復雜任務,由眾多功能單一的程序組成;

                            3、盡理避免跟用戶交互,自動化功能強大;

                            4、所有配置信息皆以文本格式保存;

6、描述linux目錄結構以及目錄結構命名規定。

   linux的目錄結構是遵循FHS結構定義的。

                FHS----Filesystem Hierarchy Standard (文件系統層級結構標準)
                            / 
                                #根,文件系統的開始,一切文件皆從根開始;
                                        /etc
                                            #配置文件目錄,系統的所有配置文件均保存在此目錄下,為單獨的層級目錄;
                                        /root
                                            #root的家目錄
                                        /home
                                            #普通用戶的家目錄
                                        /dev
                                            #設備文件目錄;設務有兩種類型 :字符設備(鍵盤、顯示器等)也叫線性設備,有時序的;塊設備(硬盤、內存)等,也叫隨機設備;
                                        /tmp
                                            #臨時文件目錄,存在此目錄下的文件默認情況下一個月以後刪除,所有用戶都有執行、寫的操作;
                                        /boot
                                            #引導加載器必須用到的各靜態文件;例如:kernel、initramfs(initrd)、grub等;
                                        /bin
                                            #二進制程序目錄,存放基本命令程序文件
                                        /sbin
                                            #二進制程序目錄,存放系統命令程序文件
                                        /usr
                                            #usr—shareable  read-only data,可共享的只讀數據目錄,有獨立的層級結構;
                                      /usr/bin
                                            #用戶管理命令,附加應用程序的二進制程序
                                        /usr/sbin
                                            #系統管理命令
                                        /usr/lib
                                            #存放基本共享庫和內核模塊;為/usr/bin和/usr/sbin提供庫文件的目錄
                                        /usr/lib64
                                            #64位的庫文件;
                                        /usr/include
                                            #存放C程序頭文件的目錄;
                                        /usr/share
                                            #命令手冊頁和自帶文檔的等架構特有的文件的存儲位置
                                        /usr/local
                                            #目前存放本地或第三方程序的安裝目錄;為層次目錄;
                                        /usr/local/bin
                                            #第三方程序安裝文件的命令文件目錄;
                                        /usr/local/sbin
                                            #第三方程序的系統管理命令存放目錄;
                                        /usr/local/lib
                                            #第三方程序的庫文件目錄;
                                        /usr/local/lib64
                                            #第三方程序的64位庫文件目錄;
                                        /usr/local/etc/
                                            ##第三方程序的配置文件目錄;
                                        /lib
                                            #存放基本共享庫和內核模塊;為系統啟動和/bin、/sbin提供庫文件的目錄,裏面的文件libc.so.*是動態鏈接的c庫,lb*是運行時鏈接器和加載器;moud
                                        /lib64
                                            #64位系統裏的共享庫和內核模塊;
                                        /var
                                            #經常發生變化的數據文件目錄;例如:日誌、緩存數據等;
                                        /var/cahe
                                            #存放緩沖程序的數據文件;
                                        /var/lib
                                            #可變狀態信息的數據文件存放目錄;
                                        /var/local
                                            #/usr/local目錄下程序的可變數據存放目錄;
                                        /proc
                                            #基於內存的虛擬文件系。用於為內核及進程存儲其相關信息,它們多為內核參數。例如:net.ipv4.ip_forward,虛擬為net/ipv4/ip_forward,存儲於/proc/sys/,因此其完整路徑為/proc/sys/net/ipv4/ip_forward;如果沒有程序運行的情況下,目錄為空;
                                        /sys
                                            #虛擬文件系統提供了一種比proc更為理想的訪問內核 數據的路徑,其主要作用在於為管理 linux 設備提供一種統一模型接口。
                                        /media
                                            #掛載目錄;掛載便捷式設備,例:光盤,U盤等;
                                        /mnt
                                            #其他文件系統的臨時掛載點;
                                        /opt
                                            #第三方附加應用程序的安裝目錄;非關鍵目錄;
                                        /srv
                                            #為當前系統提供數據的目錄;

計算機基礎與linux文件系統