日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

操作系统微内核架构研究

發布時間:2023/12/10 windows 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 操作系统微内核架构研究 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 簡介

微內核是操作系統內核的一種,在工控系統、嵌入式系統、實時系統等領域發揮著重要作用。本文較為全面地研究了微內核技術的各個方面,包括微內核的定義、微內核的體系架構、微內核的發展歷史、微內核的特點、微內核的應用場景,以及作者所進行的部分研究工作。本文部分內容和圖來自網上,由于內容較多,有些沒有標注,如果原作者覺得不合適請聯系刪除。

2 微內核的定義

在計算機科學中,內核是操作系統的核心部分,它管理著系統的各種資源,譬如時鐘、中斷、存儲、進程、設備驅動、原語等。應用程序運行在內核之上,并通過系統調用訪問內核空間。

從內核架構來劃分,操作系統內核可分為微內核(Micro Kernel)和宏內核(Monolithic Kernel,也翻譯為單內核)。如下圖所示,微內核操作系統僅在內核中保留了調度、基礎IPC、虛擬內存管理等少數核心功能模塊,它們位于內核空間,而操作系統的其他功能模塊(譬如文件系統、驅動程序等)與用戶應用程序一起運行于用戶空間;宏內核操作系統在內核中包括了整個操作系統的大部分功能模塊(譬如文件系統、驅動程序等),并且這些系統模塊都運行在同一個內核地址空間,模塊之間通過簡單的系統調用進行協調工作。

微內核(通常縮寫為μ內核)由一群數量盡可能最少的軟件程序組成,它們負責提供實現一個操作系統所必須的各種機制。這些機制就是之前提到的線程/進程調度機制、基礎的進程間通信機制(IPC)、虛擬內存管理機制等;而包括文件系統、驅動程序在內的其他各種功能模塊都放到用戶空間。微內核的最小化也稱為Jochen Liedtke最小化原則。Jochen Liedtke是一名德國科學家。這里區分兩個術語,操作系統微內核即指微內核,微內核操作系統則指一種基于微內核架構的操作系統。

???????????????????????????????????????? 圖1?微內核與宏內核架構

從操作系統功能模塊來看,操作系統廠商依據自己的實際情況,可以將宏內核操作系統中的部分功能模塊從內核空間移到用戶空間,也可以將微內核操作系統中的部分功能模塊從用戶空間移到內核空間,由此就構成了微內核、小內核、大內核、宏內核等稱謂。對于介于微內核和宏內核之間的小內核、大內核來說,有時也把它們稱之為混合內核。對于操作系統廠商來說,沒有必要嚴格遵守微內核的最小化原則,非要做一個嚴格意義上的微內核,或者完全意義上的宏內核。本文在后面主要討論微內核和宏內核。

3 微內核的體系架構

3.1 分布式服務器架構

在圖1的微內核架構中,按照官方說法,位于用戶空間的各個功能模塊被設計成一個個功能獨立的服務器(Server),由微內核采用消息通信機制來調度各個服務器完成工作。為避免混淆,這里的服務器可以理解為一個服務器程序。微內核相當于客戶端程序(Client)。

從理論上來說,基于消息通信的兩個程序(Client和Server)可以位于同一臺機器,也可以位于不同機器。因而,微內核操作系統中的這些服務器可以是分布式的,它們可能位于同一臺機器,也可能位于其他機器。這里再次強調,只是理論上是這樣,真正這樣實現的操作系統還極少。

微內核的分布式架構是有意義的。從下面鏈接可知,鴻蒙操作系統聲稱自己具有兩個特點:微內核、分布式。采用分布式消息通信機制,可以實現鴻蒙操作系統與各類硬件設備(例如手機、平板、手表、PC等)的互聯。這種消息通信機制也被說成為分布式總線。

(參見:鴻蒙系統:微內核,分布式_華為)

????????????????????????????????????????圖2?基于分布式總線的鴻蒙操作系統的萬物互聯機制

3.2?插件架構

在圖1的微內核架構中,各個服務器程序相互獨立,也有個別人把這種架構稱之為“插件架構”。

如下圖所示(微內核架構 - 簡書),在軟件開發領域,插件化架構由一個中間的核心系統和若干插件模塊組成。該架構最大的優勢是允許第三方開發者遵循一定的開發規范添加額外的插件化應用。采用插件架構的軟件有很多,例如Eclipse、企業ERP軟件等,這類軟件自身具備豐富功能,同時支持第三方應用的即插即用;并且第三方插件化程序的安裝、運行、卸載以及故障不會對原有系統造成任何影響。

????????????????????????????????????????圖3?軟件插件架構

在插件架構中,核心系統的功能穩定,很少變更。它只擁有能使應用運行的最小功能邏輯(例如插件模塊的注冊、加載、卸載,以及插件模塊之間的相互通信等)不涉及任何特定業務;插件系統具備良好的擴展性,可根據特定業務需求而變更其業務邏輯。
插件架構本質上是將一個軟件系統中的變化部分封裝在插件中,從而實現不同業務之間的隔離性,達到系統快速靈活擴展的目的,同時所有特定業務相關邏輯的變更不會影響整體系統的穩定性。

另外,插件架構需要解決好三方面的問題:插件管理、插件鏈接和插件通信。

由上可知,理論上的微內核確實是一種基于插件架構的操作系統內核。

4 微內核的發展歷史

4.1 微內核起源(參見維基百科)

微內核的起源可以追溯到丹麥計算機先驅Per Brinch Hansen和他在丹麥計算機公司Regnecentralen任職期間的工作。當時,他領導了RC 4000計算機的軟件研發。1967年,Regnecentralen正在普瓦伊的一家波蘭化肥廠安裝RC 4000原型機。這臺計算機使用了一個小型的專門為工廠量身打造的實時操作系統。Brinch Hansen和他的團隊開始關注RC 4000操作系統缺乏通用性和可重用性。他們擔心每次在其他公司安裝一臺新機器都需要開發不同的操作系統,1969年,最終完成了RC 4000多道程序設計系統。它的內核提供了基于消息傳遞的進程間通信,最多可以為23個非特權進程提供進程間通信,其中每次有8個進程相互保護。

繼Brinch Hansen的工作之后,自20世紀70年代以來,人們開始開發微內核,但“微內核”這個術語大概在1981年之前才首次出現。最早的操作系統內核一直都是宏內核,不過早期的宏內核操作系統因為功能過于簡單而更像一個微內核操作系統。隨著計算機技術的發展,新的設備驅動程序、協議棧、文件系統和其他低級系統不斷出現導致宏內核一直處在開發過程中,因此需要為管理這些代碼花費大量的時間。由此,微內核提出了一個新理念:所有這些新出現的服務都要像其他程序一樣作為用戶空間程序來實現,允許它們像任何其他程序一樣單獨工作、啟動和停止。這不僅可以讓這些服務更容易操作,而且還可以分離內核代碼,使其能夠進行微調,而不必擔心意外的副作用。采用這種方式,操作系統的內核部分就不會頻繁修改,進而便于維護和管理。

在20世紀80年代,當第一個可用的局域網出現時,微內核是一個非常熱門的話題。AmigaOS Exec內核就是一個早期的例子,它于1986年引入,并在一臺在商業上相對成功的PC中得到了使用。

4.2 三代微內核

操作系統微內核技術起始于20世紀80年代,起初被設計用來解決傳統宏內核操作系統在可維護性、擴展性、可靠性和穩定性方面的諸多問題。但是伴隨著微內核思想的進一步發展,最終形成了一整套操作系統設計的核心理念,即操作系統微內核僅提供最簡單、基本的服務,如通信功能,而操作系統的普通服務,如文件管理、設備管理、網絡管理等則在微內核以外提供。

4.2.1 第一代微內核操作系統

以Mach為代表,Mach微內核操作系統試圖從架構上重構宏內核操作系統但是仍然能夠維持原有操作系統功能的一次嘗試。為此,Mach微內核研究出了一系列概念用來支撐該項目,其中較突出的有核外頁管理器和用戶空間設備驅動等。Mach采用的IPC(進程間通信)策略包括消息傳遞、RPC(遠程過程調用)、同步和通知等。

然而,包括Mach或IBM的Workplace的第一代微內核的性能都不佳。對于Mach3來說,比原來的宏內核UNIX運行慢了約50%。最終大部分人傾向于認為性能低的原因是因為IPC開銷過大引起的,也有提出其他原因的。

以用戶程序讀寫文件時所涉及到的文件操作的上下文切換為例:

  • 宏內核在內核空間和用戶空間之間有2次切換:用戶程序<--->宏內核(來回各1次);
  • 微內核有8次切換:用戶程序<--->微內核<--->文件服務器<--->微內核<--->磁盤設備驅動器。
  • 4.2.2 第二代微內核操作系統

    以L3、L4為代表,第一代微內核從概念上驗證了微內核技術的可行性,但是因為性能上的原因,并未在產業界引起大規模推廣,但相關學術研究不斷出現。鑒于第一代微內核在性能上的劣勢,Jochen Liedtke設計了高性能的第二代微內核L4。相對于第一代微內核,第二代微內核不再是傳統Unix操作系統的簡單重構,而是一種全新的設計,并具有較高的性能。

    L4內核支持三種抽象概念:地址空間,線程和IPC。它只提供7 個系統調用,且僅有12K字節代碼。進程間通信的一個基本問題是數據需要跨越不同的地址空間。大多數操作系統的解決辦法是用兩次數據拷貝:用戶地址空間A->內核地址空間->用戶地址空間B。為了實現高性能的IPC,L4的解決辦法是通過暫時地址映射實現了1次拷貝:內核把數據的目的地址暫時映射到一個位于內核地址空間的通訊窗口,然后內核把數據從用戶A 地址空間拷貝到通訊窗口供用戶B 使用。L4還采用了許多新穎的技術來提高內核性能,例如直接地址轉換、懶惰調度(Lazy Scheduling)、使用寄存器傳送短消息、減少緩存及TLB Miss等。

    4.2.3 第三代微內核操作系統

    以seL4為代表,第三代微內核更強調安全性。seL4由澳大利亞人開發,是在第二代微內核L4基礎上發展起來的。L4作為第二代微內核,通過采用同步IPC技術以及使用寄存器而非內存拷貝的方式來傳遞消息,解決了第一代微內核的性能低、實時性差的問題;但是第二代微內核在設計時為了追求高性能,所使用的線程ID是一種全局共享靜態資源,任何任務中的線程都可以通過線程ID向其他服務器線程發起服務請求,由此形成了安全上的隱患。作為第三代微內核,seL4通過一種類似對象引用的機制即Capability進行調用,任何操作系統內核對象如線程、中斷、內存等都不能直接進行操作,由此解決了第二代微內核的安全隱患問題。seL4本身就是security L4的意思。

    總之,微內核技術從第一代發展到了第三代。第一代微內核停留在概念層面,試圖從概念上印證微內核技術的可行性;第二代微內核更關心性能,在第一代微內核的基礎上印證微內核技術的可用性;第三代微內核則關注安全性。

    5 微內核的特點

    5.1 安全性、可靠性、可移植性、可維護性

    在安全性方面,通常認為微內核操作系統比宏內核操作系統更安全。微內核之上的模塊之間相對獨立,單個模塊崩潰后可以重啟,通常不影響全局;宏內核的模塊之間因為都在內核內而糾纏在一起,一個模塊的崩潰容易導致整個系統的失敗。宏內核不安全的核心問題在于其不符合最低授權原則POLA(Principle Of Least Authority)。其中,最大的隱患在于宏內核可不斷擴張的內核模塊。例如,對Linux來說,一旦進入內核,所有的代碼都運行在CPU最高等級Ring 0,內核級的惡意軟件可以破壞中斷表、系統調用表等關鍵數據。然而,在微內核架構中,進程管理、文件系統、網絡服務等均運行在Ring 1并且沒有動態擴展,微內核的這種封閉性很好地保障了隔離性,當然這種隔離性也帶來了性能開銷。

    另外,由于內核較小,微內核操作系統相比宏內核操作系統還具有可靠性好、可移植性好、可維護性好的特點。

    5.2 可擴展性

    從可擴展性來看,微內核操作系統只在內核部分包括功能幾乎不變的核心模塊,其他模塊位于內核之上,便于擴展新的模塊;宏內核操作系統則在內核部分包括了大部分操作系統功能模塊,添加新模塊會影響到其他模塊,因而不便于擴展。

    5.3 可連續性

    在工控領域,有些系統可以連續運行幾個月甚至幾年。可連續性是指長時間運行而不重啟;當然,如果失敗后應能很快恢復運行。相比宏內核,微內核因為功能少,安全性和可靠性高,因而具有更好的連續性。

    5.4 性能

    宏內核操作系統因為在內核部分包括了大部分操作系統功能模塊,這些模塊只需要通過函數調用的方式就可以完成相互間的調用。但是,微內核操作系統的大部分功能模塊在內核之外,需要通過上下文切換和地址空間(用戶空間和內核空間)切換才能夠完成。這樣,微內核的性能通常認為比宏內核差。但即便如此,也有觀點認為微內核因為其他各種優點而會在未來的PC、服務器等領域占有一席之地。

    5.5 實時性

    微內核與實時性沒有必然聯系。因為性能和實時性是兩個不同的概念,所以把實時性放在性能之后來討論。實時內核的對比對象是分時內核或非實時內核。實時內核要求系統響應的實時性,比如火箭、無人機等的操作系統就是實時的,要求對系統的各種狀態做立即處理;而分時系統則對任務做分時處理,平分處理器時間,所以不具備實時性。由于一些微內核操作系統在實時性方面做了處理,因而具有較好的實時性,但宏內核操作系統也可以在實時性方面進行優化處理。

    6 微內核與宏內核架構之爭

    Minix和Linux是兩個著名的開源操作系統,Minix于1987年發布,主要用于教學;Linux最早在1991年發布,而1.0正式版本則在1994年發布。

    Minix采用微內核架構,Linux采用宏內核架構,那么這兩種架構到底誰更勝一籌呢?在1992年,Minix的發明者Andrew S. Tanenbaum和Linux的創始人Linus Benedict Torvalds為此有過一段著名的爭論。不過那時候,Linux才剛剛開始。看看兩位大佬的爭論,對我們會有所啟發。(參見:https://www.cnblogs.com/wickedboy237/archive/2013/05/12/3074009.html,郵件中是Andy Tanenbaum)

    Andrew主要觀點:

    (1)微內核架構優于宏內核架構。

    (2)Linux采用宏內核架構過時了,那是一些老的操作系統采用的方法,譬如UNIX, MS-DOS, VMS, MVS, OS/360, MULTICS。這是從90年代退回到70年代的一種設計方法,就像把一個正在運行著的C程序用BASIC重寫了。在1991年還寫一個宏內核操作系統真是一個愚蠢的選擇。

    (3)宏內核唯一可稱道的地方就是性能,但現在有足夠的證據表明微內核系統也能夠和宏內核系統跑得一樣快(比如Rick Rashid 發表的對 Mach 3.0 和宏內核系統對比的論文)。

    (4)微內核架構的可移植性更好,沒有必要為所有的CPU都設計一個不同的宏內核。譬如不斷涌現的那些Intel CPUs: 8008、8080、8086、8088、80286、80386、80486,一直到子子孫孫無窮盡。

    Linus主要觀點:

    (1)Linux幾乎在所有的領域里面都能戰勝Minix。

    (2)Minix并沒有把微內核的能力發揮出來,并且對于真正的在內核中的多任務處理還有問題。

    (3)事實是Linux可移植性比Minix好。可移植性的存在是為了那些不會編程的人。可移植性是個好東西,但只在有意義的前提下。嘗試著把一個操作系統變得可移植沒有必要,其實只要附帶一個輕便的API就足夠了(例如POSIX標準)。一個操作系統的理念是利用硬件的特點,并且把他們隱藏在一層層的高級調用中。當然這也使得內核變得不大有移植性,但它也變得更容易設計。

    從1992年到2020年,世間發生了太多變化:計算機性能變得越來越好,體積越來越小;Linux變得越來越流行;計算機用戶越來越年輕。由于Linux龐大的開發者和用戶群體,Linux也被開發者們移植到各類CPU架構中,并沒有因為可移植性而受到阻礙。

    7 微內核的應用場景

    在微內核的發展過程中,出現了很多的微內核操作系統,譬如:Mach、Fiasco.OC、Pistachio OKL4 Microvisor、seL4、NOVA、P4 Pike、Minix、μC/OS-ii、ADEOS、EPOC、EKA1、EROS、Mac OSWindows NT、Micro Empix、TI-RTOS、WarpOS、嵌入式Linux、Windows Embedded、PSOS、VxWorksZircon等。

    從理論上來講,一個操作系統既可以采用微內核架構,也可以采用宏內核架構,只要有開發人員愿意進行產品研發。譬如,早期的Windows NT、Mac OS等采用微內核架構,后面因為性能問題將用戶空間的一部分功能移到內核空間,構成一個混合內核。Linux則采用宏內核架構。

    然而隨著計算機技術和操作系統的不斷發展,微內核和宏內核在不同應用場景中還是存在著實際差別。

    7.1 嵌入式系統

    嵌入式系統具有資源相對有限、專用性強、實時性高等特點,因此應用于嵌入式系統的操作系統必須滿足系統內核小、支持實時多任務、具有存儲區保護功能以及可裁剪等要求。嵌入式操作系統負責嵌入式系統的全部軟硬件資源的分配、任務調度,控制和協調并發活動。它必須體現其所在系統的特征,能夠通過裝卸某些模塊來達到系統所要求的功能。

    嵌入式系統的這種需求與微內核操作系統的發展需求相吻合。現代微內核相關技術仍在繼續發展和不斷完善中,極小化和高IPC性能這兩個基本原則仍然是設計和實現決定的驅動力。

    對于嵌入式系統領域,很多系統甚至沒有硬盤存儲,它們更多地使用微內核操作系統。

    7.2 工控機、PC、服務器

    對于工控機、PC、服務器來說,因為需要操作系統完成的功能很多,處理的任務非常復雜,因而更適合使用宏內核操作系統。

    如果強調實時性,完成較簡單功能的工控機也可以采用微內核操作系統,譬如VxWorks等。

    再次說明,從理論上講,微內核和宏內核操作系統都可以應用于各種場景,只是目前已經研制的各種操作系統所采取的架構導致了它們在具體應用場景中有所側重。譬如,微內核操作系統也可以運行于一些PC或服務器上。GNU HURD是一個從1990年就開始研制的微內核操作系統,運行于Mach或L4之上,目前從官網看到的最新版本為2019年開發的Debian版本。作為一個微內核操作系統,它不需要重新啟動機器就可以開發和測試新的Hurd內核組件,運行自己的內核組件不會干擾其他用戶,因此不需要特殊的系統特權。內核擴展的機制在設計上是安全的:不可能將一個用戶的更改強加給其他用戶,除非系統管理員或授權用戶這樣做。但是,由于開發人員很少,進展較慢,還沒有達到完全成熟好用階段。(參見GNU HURD: GNU Hurd)

    7.3 移動/物聯網操作系統

    在移動、物聯網操作系統領域,大家一般把相關的操作系統歸類為微內核操作系統,譬如應用在智能手機和平板電腦的Android、iOS等(也有人稱它們為混合內核操作系統);之前介紹的鴻蒙操作系統,采用Zircon內核的谷歌Fuchsia,這兩個微內核操作系統可能在未來萬物互聯的物聯網系統中發揮重要作用。(參見:鴻蒙系統的微內核是什么 _企業頭條 - 天眼查)

    總之,對于一些專用系統,主要是實時系統、嵌入式系統、物聯網系統,微內核的思想更有吸引力。究其原因,主要是因為通常這些系統都不帶磁盤,整個系統都必須放在EPROM中,常常受到存儲空間的限制,而所需要的服務又比較單一和簡單。所以,幾乎所有的實時系統、嵌入式系統和物聯網系統都采用微內核。當然,微內核也有缺點,將這些服務的提供都放在進程層次上,再通過進程間通信(通常是報文的傳遞)提供服務,勢必增加系統的運行開銷,降低了效率。

    與微內核相對應,其他通用式系統由于所需的服務面廣而量大,采用宏內核就更為合適。

    8 基于seL4微內核的若干實驗研究

    8.1 第三代微內核seL4

    seL4是一個通過形式化驗證的、代碼被證明是完全正確的操作系統微內核。其實,seL4不僅是一個微內核,它還是一個類似KVM的虛擬化管理程序(hypervisor),可以在它上面運行一個虛擬機。如下圖所示,seL4支持在虛擬機中運行其他Linux操作系統。

    ????????????????????????????????????????圖4?基于seL4的虛擬化技術

    8.2 實驗1:基于中標麒麟操作系統V7.0搭建seL4編譯和測試環境

    實驗目的:本實驗是為研究如何搭建和使用seL4系統。

    實驗環境:在搭建seL4編譯和測試環境時,選取裝有《中標麒麟操作系統V7.0》操作系統的x86機器兩臺,一臺用于編譯seL4,另一臺用于測試seL4。

    實驗步驟:

    編譯環境搭建步驟如下:

    (a)搭建編譯依賴

    yum install protobuf-compiler protobuf python2-protobuf

    yum install qemu-kvm libvirt libvirt-client virt-install virt-viewer

    yum install centos-release-scl scl-utils-build -y

    yum install devtoolset-8-toolchain -y

    yum install make automake gcc gcc-c++ kernel-devel

    yum install python3-devel

    pip3 install --user setuptools

    pip3 install --user sel4-deps

    pip3 install --user camkes-deps

    yum install ghc cabal-install

    yum install openssl-devel

    yum install qemu-system-x86

    yum install?nanopb

    yum install -y gcc gcc-c++ make automake

    yum install ninja-build

    yum install python3

    yum install python2

    pip3 install future

    pip3 install Jinja2

    pip3 install tempita

    pip3 install future

    pip3 install templating

    pip3 install six

    pip3 install ply

    pip3 install protobuf grpcio-tools

    (b)升級cmake版本

    wget https://cmake.org/files/v3.17/cmake-3.17.0.tar.gz

    tar -zxvf cmake-3.17.0.tar.gz

    cd cmake-3.17.0

    ./bootstrap --parallel=16

    gmake -j 16

    gmake install

    (c)編譯sel4源碼

    mkdir sel4-tutorials-manifest

    cd sel4-tutorials-manifest

    repo init -u https://github.com/SEL4PROJ/sel4-tutorials-manifest

    repo sync

    ./init --plat pc99 --tut hello-world ?--solution

    cd hello-world_build

    ninja -j 8

    測試環境搭建步驟如下:

    (d)修改啟動項

    menuentry 'sel4-hello-world' --class fedora --class gnu-linux --class gnu --class os {

    ????load_video

    ????insmod gzio

    ????insmod part_msdos

    ????insmod xfs

    ????set root='hd0,msdos1'

    ????search --no-floppy --fs-uuid --set=root b83f90f1-65b3-4db3-b19b-ef30ca140513

    ????echo ???'Loading seL4 kernel'

    ????multiboot /?kernel-x86_64-pc99

    ????echo ???'Loading initial module ...'

    ????module ?/hello-world-image-x86_64-pc99

    }

    (e)準備seL4內核和應用鏡像

    從編譯環境中復制images文件夾中的kernel-x86_64-pc99和hello-world-image-x86_64-pc99文件到測試環境的/boot文件夾下

    (f)重啟并選擇seL4啟動項

    重啟,選擇“sel4-hello-world”啟動項,在串口中出現下圖畫面

    ????????????????????????????????????????圖5?Hello World測試程序輸出

    至此,seL4的編譯環境和測試環境搭建完畢。為了進一步研究如何修改helloworld程序,可以在編譯環境中對/root/sel4-tutorials-manifest/ hello-world/src/main.c文件進行修改,如下圖所示:

    ????????????????????????????????????????圖6?新Hello World測試源碼

    重新回到測試環境中的/root/sel4-tutorials-manifest/hello-world_ build目錄,執行ninja clean && ninja -j 8命令,命令執行成功后,把kernel-x86_64-pc99和hello-world-image-x86_64-pc99兩個文件復制到測試環境中/boot目錄下,重啟測試機器,選擇“sel4-hello-world”啟動項,可以看到修改后的源碼輸出,如下圖所示:

    ?????????????????????????????????????? 圖7?新Hello World測試效果

    8.3 實驗2:基于seL4進行進程間通訊

    實驗目的:為進一步研究seL4如何使用,需要研究如何在seL4系統下進行進程間通訊。

    實驗環境:與實驗1相同。

    實驗步驟:

    我們寫了一個server端和兩個client端和CMakeLists.txt文件。

    server.c代碼如下圖所示:

    ????????????????????????????????????????圖8?進程間通訊server源碼

    client1端代碼如下圖所示:

    ????????????????????????????????????????圖9?進程間通訊client1源碼

    client2端源碼如下圖所示:

    ????????????????????????????????????????圖10?進程間通訊client2源碼

    CMakeLists.txt代碼如下:

    ????????????????????????????????????????圖11?進程間通訊CMake文件

    對上述文件執行cmake . && ninja 命令后,在把images文件夾中的kernel-x86_64-pc99和capdl-loader-image-x86_64-pc99兩個文件復制到測試環境中/boot目錄下,增加啟動項,重啟后選擇新建啟動項,則會在串口中發現如下圖所示輸出:

    ????????????????????????????????????????圖12?進程間測試效果

    8.4 實驗3:seL4性能測試實驗

    實驗目的:為了測試seL4的性能,需要對ipc、irq、schedule、signal、fault、hardware、sync、page_mapping等方面進行性能測試。

    實驗環境:與實驗1相同。

    實驗步驟:

    使用google-benchmark測試工具庫,對每一個測試項編寫一個測試程序,如下圖所示:

    ????????????????????????????????????????圖13?性能測試工程樹

    針對上述源碼,為每一個測試源碼編寫CMakeLists.txt文件,執行ninja命令成功后,把images文件夾中的kernel-x86_64-pc99和sel4benchapp-image-x86_64-pc99文件復制到測試環境的/boot目錄下,增加啟動項,重啟后選擇新增加的啟動項。觀察串口輸出,抓取輸出數據起始信息如下圖所示:

    ????????????????????????????????????????圖14?性能測試原始數據

    對原始數據進行格式化處理后,顯示信息如下所示:

    ????????????????????????????????????????圖15?性能測試結構化數據

    8.5 實驗4:seL4虛擬化實驗

    實驗目的:為研究如何在sel4上運行Linux。

    實驗環境:與實驗1 相同。

    實驗步驟:

    (a)準備內核

    使用中標麒麟安全操作系統V7.0系統中自帶內核源碼,對內核進行如下修改:

    CONFIG_X86_32=y

    CONFIG_X86=y

    CONFIG_X86_32_SMP=n

    CONFIG_SMP=n

    CONFIG_NOHIGHMEM=y

    CONFIG_PCI_MSI=n

    CONFIG_X86_UP_APIC=n

    CONFIG_SUSPEND=n

    CONFIG_HIBERNATION=n

    CONFIG_PM=n

    CONFIG_ACPI=n

    CONFIG_VIRTIO=y

    CONFIG_VIRTIO_PCI=y

    CONFIG_VIRTIO_NET=y

    (b)準備initrd

    使用中標麒麟安全操作系統V7.0系統中自帶initrd

    (c)編寫camkes文件生成虛擬機

    import <VM/vm.camkes>;

    #include <configurations/vm.h>

    #define VM_GUEST_CMDLINE "earlyprintk=ttyS0,115200 console=tty0 console=ttyS0,115200 i8042.nokbd=y i8042.nomux=y \

    i8042.noaux=y io_delay=udelay noisapnp pci=nomsi debug root=/dev/mem"

    component Init0 {

    ????VM_INIT_DEF()

    }

    assembly {

    ????composition {

    ????????VM_COMPOSITION_DEF()

    ????????VM_PER_VM_COMP_DEF(0)

    ????}

    ????configuration {

    ????????VM_CONFIGURATION_DEF()

    ????????VM_PER_VM_CONFIG_DEF(0)

    ????????vm0.simple_untyped23_pool = 20;

    ????????vm0.heap_size = 0x2000000;

    ????????vm0.guest_ram_mb = 128;

    ????????vm0.kernel_cmdline = VM_GUEST_CMDLINE;

    ????????vm0.kernel_image = "bzimage";

    ????????vm0.kernel_relocs = "bzimage";

    ????????vm0.initrd_image = "rootfs.cpio";

    ????????vm0.iospace_domain = 0x0f;

    ????}

    }

    (d)編寫CMake文件生成sel4鏡像

    include(${SEL4_TUTORIALS_DIR}/settings.cmake)

    sel4_tutorials_regenerate_tutorial(${CMAKE_CURRENT_SOURCE_DIR})

    cmake_minimum_required(VERSION 3.8.2)

    project(vm-app C ASM)

    include(ExternalProject)

    find_package(camkes-vm REQUIRED)

    include(${CAMKES_VM_SETTINGS_PATH})

    camkes_x86_vm_setup_x86_vm_environment()

    include(${CAMKES_VM_HELPERS_PATH})

    find_package(camkes-vm-linux REQUIRED)

    include(${CAMKES_VM_LINUX_HELPERS_PATH})

    include(simulation)

    GenerateSimulateScript()

    DeclareCAmkESVM(Init0)

    GetDefaultLinuxKernelFile(default_kernel_file)

    GetDefaultLinuxRootfsFile(default_rootfs_file)

    DecompressLinuxKernel(extract_linux_kernel decompressed_kernel ${default_kernel _file})

    AddToFileServer("bzimage" ${decompressed_kernel} DEPENDS extract_linux_kernel)

    AddToFileServer("rootfs.cpio" ${default_rootfs_file})

    DeclareCAmkESVMRootServer(vm_tutorial.camkes)

    GenerateCAmkESRootserver()

    (e)測試與驗證

    執行ninja命令成功后,把images文件夾中的kernel-x86_64-pc99和capdl-loader-image-x86_64-pc99文件復制到測試環境的/boot目錄下,增加啟動項,重啟后選擇新增加的啟動項。觀察串口輸出,可看到如下圖所示信息:

    ????????????????????????????????????????圖16 虛擬機啟動界面

    8.6 實驗5:seL4與Linux性能對比測試

    seL4官方提供了一個性能測試工具sel4bench,直接編譯運行就可以得到測試結果。我們仔細研究了sel4bench,然后花時間將每個測試用例移植到了Linux平臺下,從而得出了Linux環境下的測試結果。

  • 內核版本:
  • seL4內核版本:?11.0.0-dev

    Linux發行版本CentOS Linux release 8.2.2004 (Core),Linux內核版本4.18.0-193.19.1.el8_2.x86_64

  • 測試工具:
  • seL4微內核環境:使用seL4官方提供的測試工具sel4bench

    Linux環境:將seL4官方提供的測試工具sel4bench移植到Linux內核環境

  • 測試結果(單位ns):
  •  

    最小時間

    平均時間

    最大時間

     

    Sel4

    Linux

    Sel4

    linux

    Sel4

    linux

    ipc

    128

    2102

    131

    2282

    134

    3121

    irquser

    113869

    15605

    380496

    22724

    646754

    48663

    scheduler

    340

    519

    354

    628

    672

    849

    signal

    187

    5

    214

    48

    337

    126

    fault

    279

    1718

    284

    1734

    291

    1754

    hardware

    167

    58

    180

    205

    390

    7718

    sync

    1763

    1752

    1778

    1966

    1836

    2181

    表1 seL4與Linux性能測試結果

    ?????????????????????????????????????????圖17 seL4與Linux性能對比測試

    通過以上對比測試,可以看出seL4內核與Linux內核綜合性能持平

    d)測試基準單位

    TSCTime Stamp Counter)時間戳計數器的值:從pentium開始,很多80x86微處理器都引入TSC,一個用于時間戳計數器的64位的寄存器,它在每個時鐘信號到來時加一。當前使用的CPU主頻為2.90GHz2903.998MHz),所以計數器的單位大約是0.34ns

    e)測試原理:

    seL4微內核和Linux內核之間主要做了以下對比測試:

    ipc Benchmarks:進程間通信機制( Inter-Process Communication,IPC)是一項影響內核操作系統整體性能的關鍵因素。為了評估IPC通信的實時性能, ipc Benchmarks測試用例中通過統計內核IPC通信機制下消息在內核中的時間消耗,用以測試高實時優先級進程的通信延時。

    irquser Benchmarks:中斷處理是整個系統中優先級最高的代碼,在系統運行過程中,中斷程序可以搶占到任意任務級別的代碼運行,而且中斷也分等級,高級別中斷搶占低級別中斷。系統實時性是依靠中斷機制來保證的,多任務的環境運行基礎也是中斷機制。所以對于衡量內核性能,最重要的指標就是中斷延遲。irquser Benchmarks測試用例用來測試內核的中斷延遲。

    scheduler Benchmarks:主要用于統計任務切換時間(task switching time),即系統在兩個獨立的、處于就緒態并且具有相同或不同優先級的任務之間切換所需要的時間。切換所需的時間主要取決于保存任務上下文所用的數據結構以及操作系統采用的調度算法的效率。產生任務切換的原因可以是資源可得,信號量的獲取等。任務切換過程增加了應用程序的額外負荷。CPU的內部寄存器越多,額外負荷就越重。任務切換所需要的時間取決于CPU有多少寄存器要入棧。

    signal Benchmarks:信號量混洗時間是指從一個任務釋放信號量到另一個等待該信號量的任務被激活的時間延遲。在操作系統中,通常有許多任務同時競爭某一共享資源,基于信號量的互斥訪問保證了任一時刻只有一個任務能夠訪問公共資源。信號量混洗時間反映了與互斥有關的時間開銷,因此也是衡量內核實時性能的一個重要指標。

    fault Benchmarks:異常是可以打斷CPU正在運行流程的一些事情,比如外部中斷、未定義指令、試圖修改只讀數據、執行swi指令(中斷指令)等。當這些事情發生時,CPU暫停當前的程序,先處理異常事件,然后再繼續執行被中斷的程序。中斷也是異常的一種。fault Benchmarks測試用例用于統計內核處理異常時間消耗。

    hardware Benchmarks:用于統計內核執行空系統調用的時間消耗。

    sync Benchmarks:互斥鎖是使用簡單的加鎖的方法來控制對共享資源的存取。互斥鎖只有兩種狀態,也就是上鎖和解鎖。可以把互斥鎖看作某種意義上的全局變量。在同一時刻只能有一個線程掌握某個互斥上的鎖,擁有上鎖狀態的線程能夠對共享資源進行操作。若其他線程希望上鎖一個已經上鎖了的互斥鎖,則該線程就會掛起,直到上鎖的線程釋放掉互斥鎖為止。互斥鎖使得共享資源按序在各個線程中操作。sync Benchmarks使用互斥鎖和信號量實現多線程間的同步,統計同步信號發出到所有等待線程接收到同步信號的時間消耗。

    總結

    以上是生活随笔為你收集整理的操作系统微内核架构研究的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    日批视频在线 | 99 色| 色婷婷视频在线 | 国产第一福利网 | 成年人黄色免费看 | 中文字幕日韩高清 | 亚洲v精品 | 狠狠gao| 成年人视频免费在线播放 | 国产精品理论视频 | 日韩免费三级 | 日韩大片免费在线观看 | 精品国产不卡 | 久久精品日产第一区二区三区乱码 | 国产小视频在线免费观看 | 91看片黄色| 天天天天天天干 | 免费网站黄 | 免费视频资源 | 一级黄色片网站 | 久久爱导航 | 欧美精品乱码久久久久 | 五月天视频网 | 久草网视频 | 日日爽 | 久久久久久草 | 日本中文字幕在线电影 | 日日碰狠狠躁久久躁综合网 | 国产婷婷 | 黄色大全在线观看 | 午夜av影院 | 四虎在线影视 | 国产麻豆视频 | 911在线| 四虎在线免费观看视频 | 久久精品伊人 | 亚洲精品久久激情国产片 | 免费精品国产va自在自线 | 午夜免费电影院 | 99综合电影在线视频 | a级片韩国| 国产不卡一 | 国产精品一区二区免费看 | 九九久久在线看 | 欧美一二三四在线 | 日韩天天干 | 日本黄区免费视频观看 | 日日夜夜精品视频 | 免费高清在线观看成人 | 天天干天天干天天干天天干天天干天天干 | 亚洲精品一区二区三区高潮 | 西西444www大胆高清图片 | 久久综合欧美 | 欧美成人精品欧美一级乱 | av短片在线观看 | 亚洲一区二区精品3399 | 在线一区二区三区 | 天天操网| 亚洲天天做 | 国产精品系列在线 | 超碰免费久久 | 精品美女久久久久 | 婷婷视频 | 日本精品视频免费观看 | 亚洲夜夜综合 | 五月婷婷视频在线 | 天天色天天色天天色 | 在线蜜桃视频 | 日日天天 | 在线观看一区 | 日本深夜福利视频 | 国产精品高潮呻吟久久av无 | 黄色免费网站下载 | 久久久久区 | 国产精品综合久久久 | 精壮的侍卫呻吟h | 超碰在线色 | 91av电影网 | 日韩欧美99 | 午夜精品区 | 九九久久成人 | 日韩av一区二区三区在线观看 | 人人添人人澡人人澡人人人爽 | 国产精品日韩精品 | 狠狠色丁香久久婷婷综 | 欧美色插| 摸bbb搡bbb搡bbbb | 伊人狠狠色丁香婷婷综合 | 91精品网站在线观看 | 国产精品第2页 | 久久免费一 | 久久久久欧美精品999 | 色综合久久88色综合天天免费 | 亚洲色图22p | 亚av在线 | 日日夜夜精品免费 | 欧美日韩91 | 成人在线免费av | 国产精品 视频 | 四虎影视精品永久在线观看 | 最近日本mv字幕免费观看 | 久久久久日本精品一区二区三区 | 国产精品久久久久久久久久三级 | 国产精品国产三级国产aⅴ入口 | 国产视频久久 | 国产精品久久久久久久久久三级 | 毛片美女网站 | 99久久久久久国产精品 | 日韩精品一区二区三区第95 | 96国产在线 | 国产精品美女久久久久久久网站 | 主播av在线 | 亚洲欧美国产日韩在线观看 | 国产 日韩 欧美 中文 在线播放 | 四虎在线免费 | 国产精品一区二 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 免费三级网 | 97狠狠干 | 六月激情婷婷 | 国产资源免费在线观看 | 天天天插| 97人人模人人爽人人少妇 | 麻豆精品国产传媒 | 五月开心六月伊人色婷婷 | 久久99亚洲网美利坚合众国 | 久久成人18免费网站 | 国偷自产中文字幕亚洲手机在线 | 精品国产激情 | 亚洲一区尤物 | 97精品国产97久久久久久 | 国产一级在线免费观看 | 国产一区成人在线 | 在线观看国产v片 | 免费成人在线视频网站 | av在线播放观看 | 国产精品系列在线 | 日韩剧| 深爱综合网 | 日韩中文字幕视频在线 | 久久五月婷婷丁香社区 | 国产亚洲视频系列 | 久久av一区二区三区亚洲 | 欧美aa一级片 | 中文字幕色在线 | 一级黄色大片在线观看 | 亚洲精品网址在线观看 | 久久视奸 | av电影在线观看完整版一区二区 | 天天舔夜夜操 | 少妇性色午夜淫片aaaze | 久草免费福利在线观看 | 99超碰在线观看 | 99re国产 | a级片久久 | 欧美日韩高清一区二区三区 | 日本一区二区高清不卡 | 精品极品在线 | 天天射天天干 | 久久久www成人免费毛片 | 99视频在线精品免费观看2 | 中文字幕91视频 | 免费a视频 | 免费在线国产视频 | 久久久久久久久久电影 | 久久精品免费播放 | 久草在线中文888 | 欧美美女视频在线观看 | 午夜精品久久久久久久久久久久 | 成人免费av电影 | 亚洲播放一区 | 国产精品久久久久久久久费观看 | 麻豆成人精品视频 | 天天爱天天操天天干 | 综合伊人久久 | 久久久精品免费观看 | 亚洲va天堂va欧美ⅴa在线 | 国产精品一区二区三区在线免费观看 | 欧美成人高清 | 中文字幕在线日亚洲9 | 日日婷婷夜日日天干 | 午夜久久久精品 | 亚洲黄色片在线 | 亚洲最大av网站 | 国产91精品一区二区绿帽 | 欧美日韩在线观看视频 | 免费开视频 | 国产精品18久久久久久vr | 91中文字幕在线观看 | 午夜精品成人一区二区三区 | 在线观看中文字幕2021 | 午夜男人影院 | 国产一区二区在线观看免费 | 亚洲久草在线 | 一区二区三区精品在线视频 | 亚洲做受高潮欧美裸体 | 摸阴视频| 久久久久免费精品国产小说色大师 | 欧美日韩国产一区二区在线观看 | 色人久久 | 日韩欧美视频在线 | 四虎海外影库www4hu | 日韩av一区二区三区四区 | 久草免费手机视频 | 丁香婷婷综合激情五月色 | 日本在线观看中文字幕 | 国产成人精品一区二区三区 | 狠狠操欧美 | 麻豆va一区二区三区久久浪 | 欧美一区在线观看视频 | 亚洲精品国产高清 | 欧美精品久久天天躁 | 麻豆视频国产在线观看 | 天天射天天操天天色 | 91视频麻豆 | 手机成人av在线 | 成人午夜精品福利免费 | 亚洲一级片在线观看 | 成人精品一区二区三区中文字幕 | 日韩xxxxxxxxx| 中文字幕视频免费观看 | 欧美性大战久久久久 | 麻豆视频91| 国产伦精品一区二区三区高清 | 亚洲免费精品一区二区 | 亚洲色图美腿丝袜 | 四虎在线观看视频 | 日韩免费网站 | 久久综合给合久久狠狠色 | 久久精品一区二区 | 怡红院av | 久久久成人精品 | 麻豆成人在线观看 | 久久精品99久久久久久 | 精品999久久久 | 亚洲专区欧美专区 | 久久av电影 | 国产精品a成v人在线播放 | 欧美日韩国产精品一区二区 | 日韩在线免费小视频 | 手机看片中文字幕 | 韩国在线视频一区 | 成年人在线免费看视频 | 一区二区丝袜 | 伊人久在线 | 国产在线a不卡 | 久久综合精品国产一区二区三区 | 久久艹欧美 | 亚洲欧美日韩不卡 | 日韩激情av在线 | 高清在线一区二区 | 亚洲精品动漫成人3d无尽在线 | 四虎永久免费网站 | 国产精品精品久久久久久 | www.久久视频 | 国产免费又爽又刺激在线观看 | 99视频| 丁香导航 | 久草视频在| 西西www4444大胆视频 | 成人在线你懂得 | 日韩激情中文字幕 | 亚洲天天在线 | 久久久久高清毛片一级 | 激情在线网站 | 中文不卡视频在线 | 亚洲va韩国va欧美va精四季 | 激情婷婷 | 亚洲最新av在线 | 日韩在线一区二区免费 | 二区在线播放 | 91麻豆精品国产 | 精品久久久久久综合日本 | 白丝av在线 | 欧美一级性生活视频 | 亚洲91精品在线观看 | 99久久精品午夜一区二区小说 | 午夜少妇av| 91av原创| 在线免费观看黄网站 | www五月天 | 成人国产综合 | 国产中文字幕三区 | 久久久免费在线观看 | 色射爱 | 国产精品久久麻豆 | 在线观看日韩国产 | 超碰在线公开 | 国产精品99免费看 | 亚洲视频99| 美女国内精品自产拍在线播放 | 97在线观看免费观看 | 成 人 免费 黄 色 视频 | 亚洲一级性 | 中文字幕日韩av | 中文字幕区 | 久久精品国产精品 | 麻豆免费精品视频 | 亚洲精品午夜视频 | 特黄一级毛片 | 日韩av中文在线 | 看av免费| 国产一区二区免费在线观看 | 美女网站视频色 | 中文字幕网站视频在线 | 高清不卡一区二区三区 | 日韩精品视频在线观看免费 | 97国产精品久久 | www夜夜操com| 最近高清中文字幕 | 亚洲精品在线播放视频 | 91九色porny在线 | 伊人午夜视频 | 麻豆精品视频在线观看免费 | 国产日本三级 | 国产亚洲人 | 久久精品中文字幕一区二区三区 | 国产精品国产三级国产不产一地 | 91激情视频在线 | 激情综合网在线观看 | 狠狠激情中文字幕 | 国产精品毛片一区 | 午夜精品福利一区二区 | 国产123av | 高清av中文在线字幕观看1 | 国产精品99久久久久的智能播放 | 国产精品 国产精品 | 国产精品高清一区二区三区 | 玖玖在线看 | 国产区第一页 | 91成人精品一区在线播放69 | 亚洲人成人天堂h久久 | 福利视频 | 久久影院中文字幕 | 国产黄色片免费观看 | 国产精品99蜜臀久久不卡二区 | 国产精品免费不 | 国产黄色电影 | 欧美激情视频在线观看免费 | 91成人小视频 | 成人羞羞视频在线观看免费 | 在线观看视频黄色 | 日韩网站免费观看 | 国产色婷婷精品综合在线手机播放 | 草久视频在线观看 | 国产成人精品一区二区三区免费 | 国产精品免费视频网站 | 中文字幕一区av | 国产一线二线三线在线观看 | 91网站观看 | 国产精品久久久久久一区二区三区 | 天天干夜夜操视频 | 欧美美女激情18p | 69亚洲精品 | 91免费观看视频网站 | 国产精品久久久久久久av电影 | 99视频一区二区 | 国产高清日韩 | 在线免费观看国产 | 亚洲动漫在线观看 | 在线日韩精品视频 | 日本护士撒尿xxxx18 | 久久男人中文字幕资源站 | 久久综合天天 | 日韩成年视频 | 中文字幕一区二区三区久久蜜桃 | 国产韩国精品一区二区三区 | 91视频大全 | 中文字幕第一页在线视频 | 日韩欧美一二三 | 色婷婷啪啪免费在线电影观看 | 中文视频在线 | 欧美日韩中文在线视频 | 日韩av二区 | 久久婷婷国产色一区二区三区 | 91探花国产综合在线精品 | 亚洲最大av在线播放 | 欧美色精品天天在线观看视频 | 亚洲春色奇米影视 | 热99在线视频 | 亚洲欧洲中文日韩久久av乱码 | 在线视频欧美精品 | 99精品偷拍视频一区二区三区 | 九九热精品视频在线播放 | 97在线视频免费看 | 91精品一区二区三区久久久久久 | 夜夜躁狠狠躁日日躁视频黑人 | 2019免费中文字幕 | 成年人黄色免费看 | 高潮久久久久久 | av免费片 | 欧洲亚洲激情 | 黄色影院在线播放 | 国产精品九九久久久久久久 | 中午字幕在线观看 | 亚洲免费不卡 | 亚州日韩中文字幕 | 一区二区三区在线视频观看58 | www.狠狠操.com | 久操97 | 四虎影视国产精品免费久久 | 五月花丁香婷婷 | 国产黄色精品在线观看 | 91新人在线观看 | 日韩欧美xxx| 激情综合电影网 | 97精品免费视频 | 四虎影视成人永久免费观看视频 | 色先锋资源网 | 狠狠插天天干 | 久久不射电影网 | 中文字幕a∨在线乱码免费看 | 噜噜色官网 | 亚洲激情在线 | 久久在线电影 | 久久天堂影院 | 亚洲伦理一区二区 | 国产最顶级的黄色片在线免费观看 | 久久精品久久精品久久精品 | 五月综合网站 | 久久精品一区二区国产 | 久草视频精品 | 国产精品久久久久三级 | 一区二区三区 亚洲 | 伊人久久国产精品 | 欧美日韩99 | 97香蕉超级碰碰久久免费软件 | 色诱亚洲精品久久久久久 | 九九久久免费视频 | 999视频在线播放 | 久草香蕉在线视频 | 波多野结衣在线观看视频 | 欧美精品二区 | 摸阴视频 | 中文字幕在线观看完整版 | 欧美另类高清 videos | 国产在线一区二区 | 免费在线黄色av | 国产精品一区专区欧美日韩 | 五月天综合激情网 | 成人一级在线 | 国产三级精品在线 | 色噜噜日韩精品欧美一区二区 | 免费福利视频网站 | 色久五月| 国产精品剧情 | 深爱激情亚洲 | 天天干夜夜 | 亚洲精品国产精品国自产观看 | 高清av网站| 97色综合 | 99在线免费观看 | 欧美影院久久 | 91精品国产91p65 | 伊人五月在线 | 国产麻豆精品久久 | 亚洲精品在线视频观看 | 成人97视频一区二区 | 午夜精品福利一区二区三区蜜桃 | 国产精品手机在线播放 | 色黄www小说 | 美女免费视频网站 | 97在线观看视频 | 色网站在线 | 麻豆影视在线播放 | 精品免费久久久久 | 一级黄色片毛片 | 夜夜躁狠狠燥 | 日本aaa在线观看 | 久草干| 97在线视频免费观看 | 亚洲精品中文字幕视频 | 亚洲午夜激情网 | 黄色资源网站 | 99久久精品国产免费看不卡 | 亚洲四虎在线 | 亚洲精品一区二区三区高潮 | 亚洲精品国精品久久99热一 | 久草97| 国产乱对白刺激视频不卡 | 久久综合偷偷噜噜噜色 | 免费在线观看av不卡 | 精品自拍av | 精品国产欧美一区二区三区不卡 | 国产亚洲精品成人av久久ww | 日本久久久久久久久久久 | 国产白浆视频 | 成人免费观看电影 | 麻豆精品国产传媒 | 亚州av网站 | 在线观看视频亚洲 | 久久综合狠狠综合久久狠狠色综合 | 亚洲色综合 | 欧美日韩国产综合网 | 综合铜03| 97人人模人人爽人人少妇 | 亚洲免费永久精品国产 | 亚洲国产精品视频在线观看 | www久久| 欧美日韩国产二区三区 | 在线香蕉视频 | 日韩精品久久久 | 国产成人精品在线观看 | 亚洲少妇激情 | 亚洲精品麻豆 | 欧美在线观看视频 | 99在线播放 | 成人三级网站在线观看 | 伊人久久国产精品 | 久久激情精品 | 成人免费在线观看av | 亚洲精品视频在线观看视频 | 婷婷色资源 | 色在线网站 | 成人久久久精品国产乱码一区二区 | 激情影院在线 | 97超碰伊人 | 国产福利精品在线观看 | 在线亚洲精品 | 国产精品免费av | 国产一区二区精品91 | 欧美视频在线观看免费网址 | 国产欧美久久久精品影院 | 国产精品一区二区在线播放 | 久久久私人影院 | 中文字幕在线视频第一页 | 最新免费中文字幕 | 麻豆视屏 | 91久久精品一区二区三区 | 亚洲理论在线观看电影 | 高清在线观看av | 99精品乱码国产在线观看 | 日本婷婷色| 最近中文字幕第一页 | 国产原创91 | 亚洲精品人人 | 黄网站免费久久 | 欧美色道 | 五月婷婷在线观看视频 | 国产精品免费久久久久影院仙踪林 | 91探花系列在线播放 | 免费在线一区二区 | 99精品久久只有精品 | 在线观看成人一级片 | av成人在线网站 | 亚洲国产视频直播 | 亚洲精品久久久久久久不卡四虎 | 成人观看| 91精品国产91久久久久福利 | 国内精品久久久久影院一蜜桃 | 992tv人人草| 日韩免费在线观看视频 | 久久99精品久久久久久 | 99免费在线播放99久久免费 | 日本黄色大片免费 | 亚洲影院天堂 | 亚洲精品午夜久久久久久久久久久 | 日本精品久久久久久 | 亚洲综合五月 | 亚洲国产中文字幕在线视频综合 | 国产小视频在线看 | 国产免费久久 | 成人在线超碰 | 免费看色网站 | 少妇搡bbbb搡bbb搡aa | 福利视频第一页 | 欧美大片在线看免费观看 | 国产精品一区二区电影 | 四虎成人精品永久免费av | 精品亚洲va在线va天堂资源站 | 国产亚洲片| 亚洲精品视频免费在线 | 色综合久久综合中文综合网 | va视频在线 | 日韩欧美视频在线播放 | 免费看的黄色录像 | 国产精品久久久久久久久大全 | 在线免费视 | 精品久久99 | 免费日韩 精品中文字幕视频在线 | 少妇搡bbb | 国产精久久久 | 久久精品国产v日韩v亚洲 | 97电影院在线观看 | 久久久久久精 | 中文字幕一区二区三区四区久久 | 一区二区视频在线播放 | 色网站在线免费观看 | 91成熟丰满女人少妇 | 久久国产成人午夜av影院潦草 | 99精品国产免费久久 | 米奇狠狠狠888 | 美女网站在线播放 | 超碰人人干人人 | 夜夜视频资源 | 亚洲国内精品在线 | 一级做a爱片性色毛片www | 91大神dom调教在线观看 | 亚洲综合色激情五月 | 超碰激情在线 | 伊人五月在线 | 日韩三级.com | 日韩精品一区二区三区水蜜桃 | 成人免费一区二区三区在线观看 | 国产第一页在线观看 | 国产精品18久久久久vr手机版特色 | 高清不卡一区二区在线 | 亚洲精品中文在线资源 | 992tv在线成人免费观看 | 最近日本中文字幕a | 亚洲精品99 | 五月婷婷毛片 | 久久久国产精品麻豆 | 特黄色大片 | 久99久精品视频免费观看 | 视频二区 | 久久综合五月 | 久久久官网| 国产原创av在线 | 国产精品资源网 | 国产精品免费观看在线 | 探花在线观看 | 免费成人av在线看 | 亚洲1级片 | 国产亚洲一级高清 | 欧美日韩国产精品一区二区亚洲 | 久久精品视频中文字幕 | 国产视频综合在线 | 欧美成人久久 | 国产精品久久久视频 | 国产精品a成v人在线播放 | 免费 在线 中文 日本 | 天天爱天天射 | 男女拍拍免费视频 | 欧美a级在线免费观看 | avove黑丝| 日韩午夜高清 | 久久午夜国产 | 久久99久久99久久 | 亚洲九九九在线观看 | 国产精品99久久久精品免费观看 | 四虎影视精品 | 91高清在线 | 国产精品高清一区二区三区 | 亚洲人在线7777777精品 | 亚洲欧美国产精品18p | 欧美日韩国产二区 | 中国一级片视频 | 97网站| 中文字幕在线第一页 | 日韩免费观看一区二区三区 | 成人精品影视 | 91大神在线观看视频 | 久草免费在线 | a资源在线 | 国产精品成人一区二区 | 99久久精品国产毛片 | 欧美福利片在线观看 | 色人久久| 国产成人黄色 | 免费看片亚洲 | 亚洲黄色小说网址 | 日本中文字幕影院 | 免费h漫在线观看 | 国产精品扒开做爽爽的视频 | 99免费看片 | www亚洲国产 | 日韩免费播放 | 91在线视频精品 | 成人黄色毛片视频 | 国产另类xxxxhd高清 | 丁香色婷婷 | 欧美一级小视频 | 中文字幕欧美激情 | 亚洲精品在线资源 | 日本黄色免费电影网站 | 伊人五月在线 | 亚洲成年人免费网站 | 亚洲国产欧美一区二区三区丁香婷 | 国产香蕉在线 | 日本在线h | 成人在线免费观看网站 | 精品一区二区三区久久久 | 99视频精品全部免费 在线 | 国产成人免费观看久久久 | 久久久免费 | 成人久久久精品国产乱码一区二区 | 伊甸园av在线 | 日韩在线观看你懂的 | 欧美成人黄色 | 日韩免费高清在线 | 丰满少妇在线观看 | 一区二区三区高清在线 | 91完整版| 久久国产精品区 | 国产高清无线码2021 | 欧美精品一区在线 | 中文字幕中文字幕在线中文字幕三区 | 日韩色视频在线观看 | 97视频在线免费 | 人人舔人人 | 亚洲高清国产视频 | www日韩在线观看 | 国内精品久久久久久久久久久久 | 五月婷婷六月丁香 | 欧美国产大片 | 黄色.com| 成人免费影院 | 亚洲一区久久久 | 国产香蕉97碰碰久久人人 | 精品国产成人在线 | 西西人体4444www高清视频 | 人人草人人草 | 婷婷精品国产欧美精品亚洲人人爽 | 大型av综合网站 | 久久久久成人精品亚洲国产 | 91九色九色 | 婷婷综合久久 | 狠狠躁天天躁综合网 | av电影在线免费 | 国产精品九九久久久久久久 | 中文av网站 | 亚洲视频免费在线 | 国产精品一区二区三区在线免费观看 | 久久久久国产精品厨房 | 欧美在线日韩在线 | 久久综合99 | 国产精品大片 | 国产专区精品视频 | www.99av| 欧美一进一出抽搐大尺度视频 | 亚洲高清国产视频 | 中文av在线播放 | 国产一级视频在线免费观看 | 免费麻豆网站 | 黄色小网站在线 | 日韩激情视频在线 | 久久激情小说 | 五月综合激情婷婷 | 在线中文字幕观看 | 欧美日韩久久一区 | 国产精品一区二区三区四 | 999视频网站| 国产精品久久人 | 西西www444 | 亚洲婷婷免费 | 成人日批视频 | 中文字幕色婷婷在线视频 | 国内精品久久久久久久久 | 久久精品视频在线观看免费 | 毛片播放网站 | 国产毛片久久久 | 亚洲国产精品女人久久久 | 在线久热| 在线黄色国产 | 久久久噜噜噜久久久 | 深夜福利视频一区二区 | 日韩欧美视频在线免费观看 | 国内精品视频在线 | 欧美视频国产视频 | 日韩久久精品一区二区 | 91精品影视 | 有码中文字幕 | 成人网页在线免费观看 | 国产123区在线观看 国产精品麻豆91 | 特级xxxxx欧美 | 日韩欧美电影在线观看 | 五月婷婷亚洲 | 亚洲视频久久久久 | 少妇啪啪av入口 | 中文一二区 | 人人看人人做人人澡 | 黄色成人在线 | 99久久久国产精品免费99 | 91成人在线观看喷潮 | 免费三级av | 国产成人av一区二区三区在线观看 | 久久99精品久久久久久久久久久久 | 亚洲狠狠婷婷 | 久久精品99久久久久久 | 欧美成人在线网站 | 国产一级电影免费观看 | 免费视频久久久久久久 | 亚洲经典精品 | 黄色免费网站下载 | 成人a免费看 | 69精品久久 | 国产日韩精品欧美 | 久久久久综合精品福利啪啪 | 99久久99视频 | 国产精品成人久久久 | 久久五月婷婷综合 | 国产精品大片在线观看 | 最近中文字幕高清字幕在线视频 | 欧洲激情在线 | 日韩精品1区2区 | 人人干人人干人人干 | a特级毛片| 久久综合久色欧美综合狠狠 | 国产亲近乱来精品 | 91av视频在线播放 | 免费三级黄| 色中文字幕在线观看 | 欧美日韩在线第一页 | 国产特级毛片aaaaaa毛片 | 高清av网站 | 人人爱天天操 | 亚洲一区二区三区miaa149 | 成人av手机在线 | 亚洲va欧美va | 日韩精品最新在线观看 | 国产不卡在线视频 | 日韩一二区在线 | 国产日韩视频在线 | www.伊人色.com | 亚洲午夜av| 国模视频一区二区三区 | av大全在线看 | 久久综合色综合88 | 成人免费视频在线观看 | 国产偷国产偷亚洲清高 | 97在线观 | 99资源网| 婷婷色狠狠 | 中文字幕4| 亚洲综合视频在线 | 国内精品在线一区 | 探花视频在线观看 | 91黄视频在线观看 | 久久精品欧美一区二区三区麻豆 | www天天操 | 波多野结衣一区二区三区中文字幕 | 天天色天天射综合网 | 国产精品18久久久久久不卡孕妇 | 粉嫩高清一区二区三区 | 国产色视频网站 | 午夜精品一区二区三区视频免费看 | 国产91学生粉嫩喷水 | 麻豆影视在线观看 | 在线成人国产 | 久日精品 | 在线综合 亚洲 欧美在线视频 | 天天操天天射天天添 | 天天色天天草天天射 | 久久99精品一区二区三区三区 | 亚洲aⅴ久久精品 | 999久久久免费精品国产 | 中文 一区二区 | 欧美精品二 | 欧美日韩视频在线 | 天天干天天操天天干 | 伊人婷婷激情 | 欧美日韩免费在线观看视频 | 97超碰总站 | 日韩视频免费观看高清完整版在线 | 久久久久综合精品福利啪啪 | 五月天激情综合网 | 青青河边草观看完整版高清 | 91香蕉国产| 操老逼免费视频 | 涩涩爱夜夜爱 | 91热在线 | 欧美一级片在线播放 | 丁香九月激情 | 天天草天天干天天 | 日韩激情久久 | 奇米影视四色8888 | 精品国产一二区 | 99 国产精品| 97在线视频观看 | 五月婷婷中文网 | 最近中文字幕大全 | 国产精品 国产精品 | 国产精品久久片 | av综合 日韩| 在线播放一区二区三区 | 免费观看黄 | 免费观看一区二区三区视频 | 免费国产在线精品 | 国产成人精品一区二区 | 国产精品久久久久久久毛片 | 97成人在线观看 | 免费黄色看片 | 最新国产在线观看 | 日本中文字幕在线免费观看 | 91麻豆精品91久久久久同性 | 97人人精品 | 日韩激情视频 | 五月婷婷电影网 | 91精品对白一区国产伦 | 黄色看片 | www.色综合.com | 91中文字幕在线视频 | 国产精品99在线播放 | 伊人五月天综合 | 免费看成年人 | 不卡国产在线 | 99国产成+人+综合+亚洲 欧美 | 国产精品国产自产拍高清av | 国产午夜精品福利视频 | 亚洲国产欧美在线人成大黄瓜 | 免费黄色特级片 | 久久久五月天 | 久草影视在线 | 2021国产精品| 国产高清久久久久 | 人人爽久久久噜噜噜电影 | 成人av免费在线观看 | 中文字幕在线播放日韩 | 超碰激情在线 | 国产视频日韩 | 色多多污污在线观看 | 伊人看片| www91在线观看 | 91精品国产成人www | 亚洲黄网站 | 黄色的网站免费看 | 91天天操| av免费高清观看 | 日韩av伦理片 | 97精品国产91久久久久久久 | 天天色天天 | 丁香综合激情 | 国产在线高清视频 | 亚洲毛片一区二区三区 | 天天干中文字幕 | 在线中文视频 | 久久夜色精品国产欧美乱 | 97精品国产97久久久久久春色 | 久久综合九色综合欧美就去吻 | 天干啦夜天干天干在线线 | 精品在线视频播放 | 日本性久久 | 在线精品视频在线观看高清 | 中文字幕av在线播放 | 麻豆传媒电影在线观看 | 麻豆果冻剧传媒在线播放 | 日韩久久久 | 在线观看免费高清视频大全追剧 | 91成人在线视频 | 24小时日本在线www免费的 | 六月激情久久 | 国产精品一区二区电影 | 午夜影院一级片 | 国产视频一区二区三区在线 | 久久午夜免费观看 | 六月丁香激情综合色啪小说 | 91亚洲精品久久久久图片蜜桃 | 日日躁夜夜躁xxxxaaaa | 久久草在线视频国产 | 成人精品国产免费网站 | 日韩中文字幕免费在线观看 | 亚洲精品男人天堂 | 狠狠狠的干 | 91精品久久久久久久久久久久久 | 日韩有码专区 | 中文在线免费一区三区 | 色综合久久久久久久 | 国产精品综合久久久久久 | 天天操夜夜爱 | 天天综合色天天综合 | 精品国产自在精品国产精野外直播 | 超碰av在线 | 日韩精品中文字幕一区二区 | 伊人电影在线观看 | 亚洲mv大片欧洲mv大片免费 | 亚洲国产成人精品电影在线观看 | 国产精品久久久久久高潮 | av网在线观看 | 欧美日韩国产二区三区 | 蜜臀久久99静品久久久久久 | 夜夜爽88888免费视频4848 | 国内小视频在线观看 | 成人在线你懂得 | 国产99久久| 天天亚洲| 亚洲伦理电影在线 | 精品一区二区亚洲 | 亚洲国产精品999 | 国产黄色免费看 | 久久久久久久久久亚洲精品 | 国产亚洲视频在线 | 亚洲人人网 | 久草视频免费播放 | 天天操天天操天天爽 | 激情网综合 | 日韩精品在线免费观看 | 探花视频在线观看 | 国产成人av综合色 | 西西444www大胆无视频 | 亚洲国产精品电影在线观看 | 欧美黑吊大战白妞欧美 | 成人在线观看免费 | 国产精品18久久久久久vr | 日本黄色大片儿 | 日本在线观看一区二区 | 久色免费视频 | 国产精品av久久久久久无 |