計算機主要有哪些操作系統
每個計算機都至少擁有一個操作系統,那么現在主要為三足鼎立,window、Linux、Unix操作系統,當然還有其他的系統,它們分別有什么特點呢,下面由學習啦小編為大家整理了簡述幾種計算機網絡操作系統的相關知識,希望對大家有幫助!
簡述幾種計算機網絡操作系統(一)Windows類
這類操作系統是由Microsoft公司開發的。微軟公司的Windows系統不僅在個人操作系統中占有絕對優勢,它在網絡操作系統中具有非常重要的地位。在局域網中,微軟的網絡操作系統主要有:WindowsNT4.0Serve、Windows2000Server/AdvanceServer,以及最新的Windows2003Server/AdvanceServer等,工作站系統可以采用任一Windows或非Windows操作系統。
WindowsNT4.0系統,它幾乎成為中、小型企業局域網的標準操作系統,一是它繼承了Windows家族統一的界面,使用起來更加容易;二是它的功能比較強大,基本上能滿足所有中、小型企業的各項網絡需求。
Windows2000Server產品家族建立于強大的WindowsNT技術之上,集成了基于標準的目錄、Web、應用程序、通信、文件和打印服務。這些服務具備高可靠性和高效的管理,并且支持最新的網絡硬件技術,從而提供了實現商務應用和與Internet集成的最佳基礎。
簡述幾種計算機網絡操作系統(二)Linux
Linux是由芬蘭赫爾辛基大學的學生LinusB.TorvoIds在1992年首創,Linux是一個免費的,提供源代碼的操作系統。后來在全世界各地由成千上萬的Internet上的自由軟件開發者協同開發,不斷完善。經過7年的發展,它已經步入了成熟階段,廣泛應用到從Internet服務器到用戶的桌面,從圖形工作站到PDA的各種領域。Linux下有大量的免費應用軟件,從系統工具、開發工具、網絡應用,到休閑娛樂、游戲、到更多,性能價格比高。更重要的是,它是安裝在個人電腦上可兼性比較高的操作系統。
它是一種新型的網絡操作系統,最大的特點就是源代碼開放,可以免費得到許多應用程序。目前也有中文版本的Linux,如紅帽子REDHAT,紅旗Linux等。在國內得到了用戶充分的肯定,主要體現在它的安全性和穩定性方面,它與Unix有許多類似之處。但目前這類操作系統仍主要應用于中、高檔服務器中。
簡述幾種計算機網絡操作系統(三)Unix系統
最初的Unix操作系統是1969年由ATST(貝爾實驗室)的湯普遜(Thompson)、里奇(Ritchie)等人在PDP-7上開發成功的16位微機操作系統。它經歷了從開發、發展、不斷演變和獲得廣泛應用以致逐漸成為工作站等小型機的標準操作系統的演變過程。
目前常用的UNIX系統版本主要有:Unix網絡操作系統的版本有:ATST和SCO的UnixSVR3.2、SVR4.0和SVR4.2等。支持網絡文件系統服務,提供數據等應用,功能強大,由ATST和SCO公司推出。
這種網絡操作系統穩定和安全性能非常好,但由于它多數是以命令方式來進行操作的,不容易掌握,因此小型局域網基本不使用Unix作為網絡操作系統,Unix一般用于大型的網站或大型的企、事業局域網中。Unix網絡操作系統歷史悠久,其良好的網絡管理功能已為廣大網絡用戶所接受,擁有豐富的應用軟件的支持。
相關閱讀:操作系統常見故障核心知識
1、進程與線程
1 進程與線程的概念
進程:是一定功能的程序關于某個數據集合的一次運行活動,進程是系統進行資源調度和分配的獨立單位。
線程:是進程的實體,是CPU調度和分派的基本單位,它是比進程更小的能獨立運行的基本單位。
2 進程與線程的關系
a. 一個線程可以創建和撤銷另一個線程,一個進程中可以多個線程并發執行;
b. 相對進程而言,線程更加接近于執行體的概念,多個線程可以共享同一個進程的資源,每個線程還有自己私有的桟空間并擁有獨立的執行序列。
c. 進程有獨立的地址空間,在保護模式下,進程崩潰時不會對其他進程有影響。線程有自己的堆桟和局部變量,但是線程之間沒有獨立的地址空間,所以一個線程的死亡就相當于進程的死亡。因此,多進程的程序比多線程的程序具有更好的健壯性,但是進程間切換耗費資源較大,大約是線程間切換的十倍,所以多線程擁有更高的效率
線程和進程的區別聯系:
1,進程:子進程是父進程的復制品。子進程獲得父進程數據空間、堆和棧的復制品。
2,線程:相對與進程而言,線程是一個更加接近與執行體的概念,它可以與同進程的其他線程共享數據,但擁有自己的棧空間,擁有獨立的執行序列。
兩者都可以提高程序的并發度,提高程序運行效率和響應時間。
線程和進程在使用上各有優缺點:線程執行開銷小,但不利于資源管理和保護;而進程正相反。同時,線程適合于在SMP機器上運行,而進程則可以跨機器遷移。
根本區別就一點:用多進程每個進程有自己的地址空間(address space),線程則共享地址空間。所有其它區別都是由此而來的:
1、速度:線程產生的速度快,線程間的通訊快、切換快等,因為他們在同一個地址空間內。
2、資源利用率:線程的資源利用率比較好也是因為他們在同一個地址空間內。
3、同步問題:線程使用公共變量/內存時需要使用同步機制還是因為他們在同一個地址空間內
2、進程間通信
進程間通信主要有:管道、系統IPC(消息隊列、信號量、共享存儲)和socket。
管道主要分為普通管道、流管道、命名管道。
管道是一種半雙工的通信方式,數據只能單項流動,并且只能在具有親緣關系的進程間流動,進程的親緣關系通常是父子進程
命名管道也是半雙工的通信方式,它允許無親緣關系的進程間進行通信 信號量是一個計數器,用來控制多個進程對資源的訪問,它通常作為一種鎖機制。
消息隊列是消息的鏈表,存放在內核中并由消息隊列標識符標識。
信號是一種比較復雜的通信方式,用于通知接收進程某個事件已經發生。
共享內存就是映射一段能被其它進程訪問的內存,這段共享內存由一個進程創建,但是多個進程可以訪問。
3、緩沖區溢出
概念: 緩沖區溢出是指計算機向緩沖區填寫的數據超過了緩沖區的容量,數據覆蓋在其他合法區域上。
危害: 程序崩潰,導致拒絕服務;跳轉并執行一段惡意代碼
注:緩沖區溢出的原因是程序員沒有對輸入數據進行檢查。
4、死鎖
1 概念:在兩個及兩個進程并發執行的過程中,有的線程持有了一部分資源,又在等待其他進程持有的資源,資源的互相持有和等待就導致了進程死鎖。
2 死鎖產生的四個條件(ACID):
互斥性: 一個資源只能被一個進程持有
請求和保持:一個進程因請求資源而阻塞導致原來持有的資源得不到釋放
不可剝奪: 進程未完成功能之前,不可強制釋放當前所持有的資源
環路等待: 若干進程之間形成環路等待資源的情形
3 解決死鎖的方法:
解決死鎖的基本思路就是破壞死鎖產生的四個必要條件
解決死鎖的基本方法如下:
預防死鎖、避免死鎖、檢測死鎖、解除死鎖
解決四多的常用策略如下:
鴕鳥策略、預防策略、避免策略、檢測與解除死鎖
5、進程調度的策略
FCFS(先來先服務)、優先級、時間片輪轉、多級反饋
6、進程同步的方式
原子操作、信號量、自旋鎖管程、會合、分布式系統