精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

十分鐘讓你了解 Linux ABI

系統 Linux
熟悉 ABI 的概念、ABI 穩定性的重要性以及 Linux 穩定 ABI 中包含的內容。

LCTT 譯注:昨天,AlmaLinux 稱將 放棄 對 RHEL 的 1:1 兼容性,但將保持對 RHEL 的 ABI 兼容,以便在 RHEL 上運行的軟件可以無縫地運行在 AlmaLinux 上。可能有的同學對 ABI 的概念還不是很清楚,因此翻譯此文供大家了解。

許多 Linux 愛好者都熟悉 Linus Torvalds 的 著名告誡:“我們不破壞用戶空間”,但可能并非每個聽到這句話的人都清楚其含義。

這個“第一規則”提醒開發人員關于應用程序的二進制接口(ABI)的穩定性,該接口用于應用程序與內核之間的通信和配置。接下來的內容旨在使讀者熟悉 ABI 的概念,闡述為什么 ABI 的穩定性很重要,并討論 Linux 穩定 ABI 中包含了哪些內容。Linux 的持續增長和演進需要對 ABI 進行變更,其中一些變更引起了爭議。

什么是 ABI?

ABI 表示 應用程序二進制接口Applications Binary Interface。理解 ABI 概念的一種方式是考慮它與其他概念的區別。對于許多開發人員來說,應用程序編程接口Applications Programming Interface(API)更為熟悉。通常,庫的頭文件和文檔被認為是其 API,以及還有像 HTML5 這樣的標準文檔。調用庫或交換字符串格式數據的程序必須遵守 API 中所描述的約定,否則可能得到意外的結果。

ABI 類似于 API,因為它們規定了命令的解釋和二進制數據的交換方式。對于 C 程序,ABI 通常包括函數的返回類型和參數列表、結構體的布局,以及枚舉類型的含義、順序和范圍。截至 2022 年,Linux 內核仍然幾乎完全是 C 程序,因此必須遵守這些規范。

內核系統調用接口” 的描述可以在《Linux 手冊第 2 節》中找到,并包括了可從中間件應用程序調用的類似 mount 和 sync 的 C 版本函數。這些函數的二進制布局是 Linux ABI 的第一個重要組成部分。對于問題 “Linux 的穩定 ABI 包括哪些內容?”,許多用戶和開發人員的回答是 “sysfs(/sys)和 procfs(/proc)的內容”。而實際上,官方 Linux ABI 文檔 確實主要集中在這些 虛擬文件系統 上。

前面著重介紹了 Linux ABI 在程序中的應用方式,但未涵蓋同等重要的人為因素。正如下圖所示,ABI 的功能需要內核社區、C 編譯器(如 GCC 或 clang)、創建用戶空間 C 庫(通常是 glibc)的開發人員,以及按照 可執行與鏈接格式(ELF) 布局的二進制應用程序之間的合作努力。

開發社區內的合作開發社區內的合作

為什么我們關注 ABI?

來自 Torvalds 本人的 Linux ABI 的穩定性保證,使得 Linux 發行版和個人用戶能夠獨立更新內核,而不受操作系統的影響。

如果 Linux 沒有穩定的 ABI,那么每次內核需要修補以解決安全問題時,操作系統的大部分甚至全部內容都需要重新安裝。顯然,二進制接口的穩定性是 Linux 的可用性和廣泛采用的重要因素之一。

Terminal outputTerminal output

如上圖所示,內核(在 linux-libc-dev 中)和 Glibc(在 libc6-dev 中)都提供了定義文件權限的位掩碼。顯然,這兩個定義集必須一致!apt 軟件包管理器會識別軟件包提供每個文件。Glibc ABI 的潛在不穩定部分位于 bits/ 目錄中。

在大部分情況下,Linux ABI 的穩定性保證運作良好。按照 

Y2038:一個 ABI 破壞的例子

通過考慮當前正在進行的、緩慢發生 的 “Y2038” ABI 破壞的例子,可以更好地理解 Linux ABI。在 2038 年 1 月,32 位時間計數器將回滾到全零,就像較舊車輛的里程表一樣。2038 年 1 月聽起來還很遙遠,但可以肯定的是,如今銷售的許多物聯網設備仍將處于運行狀態。像今年安裝的 智能電表 和 智能停車系統 這樣的普通產品可能采用的是 32 位處理器架構,而且也可能不支持軟件更新。

Linux 內核已經在內部轉向使用 64 位的 time_t 不透明數據類型來表示更晚的時間點。這意味著像 time() 這樣的系統調用在 64 位系統上已經變更了它們的函數簽名。這些努力的艱難程度可以在內核頭文件中(例如 time_types.h)清楚地看到,在那里放著新的和 _old 版本的數據結構。

里程表翻轉里程表翻轉

Glibc 項目也 支持 64 位時間,那么就大功告成了,對嗎?不幸的是,根據 Debian 郵件列表中的討論 來看,情況并非如此。發行版面臨難以選擇的問題,要么為 32 位系統提供所有二進制軟件包的兩個版本,要么為安裝介質提供兩個版本。在后一種情況下,32 位時間的用戶將不得不重新編譯其應用程序并重新安裝。正如往常一樣,專有應用程序才是一個真正的頭疼問題。

Linux 穩定 ABI 里到底包括什么內容?

理解穩定 ABI 有些微妙。需要考慮的是,盡管大部分 sysfs 是穩定 ABI,但調試接口肯定是不穩定的,因為它們將內核內部暴露給用戶空間。Linus Torvalds 曾表示,“不要破壞用戶空間”,通常情況下,他是指保護那些 “只想它能工作” 的普通用戶,而不是系統程序員和內核工程師,后者應該能夠閱讀內核文檔和源代碼,以了解不同版本之間發生了什么變化。下圖展示了這個區別。

穩定性保證穩定性保證

普通用戶不太可能與 Linux ABI 的不穩定部分進行交互,但系統程序員可能無意中這樣做。除了 /sys/kernel/debug 以外,sysfs(/sys)和 procfs(/proc)的所有部分都是穩定的。

那么其他對用戶空間可見的二進制接口如何呢,包括 /dev 中的設備文件、內核日志文件(可通過 dmesg 命令讀取)、文件系統元數據或在內核的 “命令行” 中提供的 “引導參數”(在引導加載程序如 GRUB 或 u-boot 中可見)呢?當然,“這要視情況而定”。

掛載舊文件系統

除了 Linux 系統在引導過程中出現掛起之外,文件系統無法掛載是最令人失望的事情。如果文件系統位于付費客戶的固態硬盤上,那么問題確實十分嚴重。當內核升級時,一個能夠在舊內核版本下掛載的 Linux 文件系統應該仍然能夠掛載,對嗎?實際上,“這要視情況而定”。

在 2020 年,一位受到傷害的 Linux 開發人員在內核的郵件列表上 抱怨道

內核已經接受這個作為一個有效的可掛載文件系統格式,沒有任何錯誤或任何類型的警告,而且已經這樣穩定地工作了多年……我一直普遍地以為,掛載現有的根文件系統屬于內核<->用戶空間或內核<->現有系統邊界的范圍,由內核接受并被現有用戶空間成功使用的內容所定義,升級內核應該與現有用戶空間和系統兼容。

但是有一個問題:這些無法掛載的文件系統是使用一種依賴于內核定義,但并未被內核使用的標志的專有工具創建的。該標志未出現在 Linux 的 API 頭文件或 procfs/sysfs 中,而是一種 實現細節。因此,在用戶空間代碼中解釋該標志意味著依賴于“未定義行為”,這是個幾乎會讓每個軟件開發人員都感到戰栗的短語。當內核社區改進其內部測試并開始進行新的一致性檢查時,“man 2 mount” 系統調用突然開始拒絕具有專有格式的文件系統。由于該格式的創建者明確是一位軟件開發人員,因此他未能得到內核文件系統維護者的同情。

施工標志上寫著工作人員在樹上進行工作施工標志上寫著工作人員在樹上進行工作

線程化內核的 dmesg 日志

/dev 目錄中的文件格式是否保證穩定或不穩定?dmesg 命令 會從文件 /dev/kmsg 中讀取內容。2018 年,一位開發人員 為 dmesg 輸出實現了線程化,使內核能夠“在打印一系列 printk() 消息到控制臺時,不會被中斷和/或被其他線程的并發 printk() 干擾”。聽起來很棒!通過在 /dev/kmsg 輸出的每一行添加線程 ID,實現了線程化。密切關注的讀者將意識到這個改動改變了 /dev/kmsg 的 ABI,這意味著解析該文件的應用程序也需要進行相應的修改。由于許多發行版沒有編譯啟用新功能的內核,大多數使用 /bin/dmesg 的用戶可能沒有注意到這件事,但這個改動破壞了 GDB 調試器 讀取內核日志的能力。

確實,敏銳的讀者會認為 GDB 的用戶運氣不佳,因為調試器是開發人員工具。實際上并非如此,因為需要更新以支持新的 /dev/kmsg 格式的代碼位于內核自己的 Git 源代碼庫的 “樹內” 部分。對于一個正常的項目來說,單個代碼庫內的程序無法協同工作就是一個明顯的錯誤,因此已經合并了一份 使 GDB 能夠與線程化的 /dev/kmsg 一起工作的補丁

那么 BPF 程序呢?

BPF 是一種強大的工具,可以在運行的內核中監控甚至實時進行配置。BPF 最初的目的是通過允許系統管理員即時從命令行修改數據包過濾器,從而支持實時網絡配置。Alexei Starovoitov 和其他人極大地擴展了 BPF,使其能夠跟蹤任意內核函數。跟蹤明顯是開發人員的領域,而不是普通用戶,因此它顯然不受任何 ABI 保證的約束(盡管 bpf() 系統調用 具有與其他系統調用相同的穩定性承諾)。另一方面,創建新功能的 BPF 程序為“取代內核模塊成為擴展內核的事實標準手段”提供了可能性。內核模塊使設備、文件系統、加密、網絡等工作正常,因此明顯是“只希望它工作”的普通用戶所依賴的設施。問題是,與大多數開源內核模塊不同,BPF 程序傳統上不在內核源代碼中。

2022 年春季,一個提案 成為了焦點,該提案提議使用微型 BPF 程序而不是設備驅動程序補丁,對廣泛的人機接口設備(如鼠標和鍵盤)提供支持。

隨后進行了一場激烈的討論,但這個問題顯然在 Torvalds 在開源峰會上的評論 中得到解決:

他指出,如果你破壞了“普通(非內核開發人員)用戶使用的真實用戶空間工具”,那么你需要修復它,無論是否使用了 eBPF。

一致意見似乎正在形成,即希望其 BPF 程序在內核更新后仍能正常工作的開發人員 將需要將其提交到內核源代碼庫中一個尚未指定的位置。敬請關注后繼發展,以了解內核社區對于 BPF 和 ABI 穩定性將采取什么樣的政策。

結論

內核的 ABI 穩定性保證適用于 procfs、sysfs 和系統調用接口,但也存在重要的例外情況。當內核變更破壞了“樹內”代碼或用戶空間應用程序時,通常會迅速回滾有問題的補丁。對于依賴內核實現細節的專有代碼,盡管這些細節可以從用戶空間訪問,但它并沒有受到保護,并且在出現問題時得到的同情有限。當像 Y2038 這樣的問題無法避免 ABI 破壞時,會以盡可能慎重和系統化的方式進行過渡。而像 BPF 程序這樣的新功能提出了關于 ABI 穩定性邊界的尚未解答的問題。

致謝

感謝 Akkana PeckSarah R. Newman 和 Luke S. Crawford 對早期版本材料的有益評論。

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2024-06-19 09:58:29

2024-05-13 09:28:43

Flink SQL大數據

2024-11-07 16:09:53

2015-11-06 11:03:36

2021-07-29 08:57:23

ViteReact模塊

2020-12-09 16:41:22

LinuxIT開發

2023-10-11 08:18:55

DjangoPython

2024-10-08 11:12:12

2009-11-03 11:01:45

VB.NET遠程事件

2024-12-13 15:29:57

SpringSpringBeanJava

2025-03-18 12:20:00

編程

2020-12-17 06:48:21

SQLkafkaMySQL

2019-04-01 14:59:56

負載均衡服務器網絡

2022-03-21 08:05:38

HTTP/1.1QUIC協議

2024-10-06 12:50:25

2022-06-16 07:31:41

Web組件封裝HTML 標簽

2021-09-07 09:40:20

Spark大數據引擎

2023-04-12 11:18:51

甘特圖前端

2023-11-30 10:21:48

虛擬列表虛擬列表工具庫

2015-09-06 09:22:24

框架搭建快速高效app
點贊
收藏

51CTO技術棧公眾號

不卡视频在线看| 国产大片一区| 欧美午夜不卡视频| 国产精品久久成人免费观看| www.国产黄色| 国产农村妇女精品一二区| 亚洲日韩欧美视频| 深夜做爰性大片蜜桃| 亚洲美女尤物影院| 日韩一区欧美小说| 国产欧美综合精品一区二区| 在线永久看片免费的视频| 91精品观看| 亚洲午夜av久久乱码| 一区二区三区人妻| 欧美aaa视频| 一区二区在线观看视频| 日本视频一区二区不卡| www.久久色| 男人的j进女人的j一区| 久久久日本电影| 实拍女处破www免费看| 国产精品视频一区视频二区 | 欧美一级特黄aaaaaa在线看片| 人妻va精品va欧美va| 久久精品99国产精品日本| 国内精品久久久久影院优| 91无套直看片红桃在线观看| 久久亚洲道色| 欧美一级日韩免费不卡| 日韩精品―中文字幕| 在线你懂的视频| 国产三级欧美三级| 精品视频一区二区三区四区| h狠狠躁死你h高h| 奇米888四色在线精品| 97在线精品视频| 免费麻豆国产一区二区三区四区| 国产一区毛片| 日韩高清中文字幕| 韩国三级视频在线观看| 精品国产乱码一区二区三区| 欧美视频一区在线观看| 免费大片在线观看| 亚洲天堂资源| 精品人伦一区二区三区蜜桃网站 | 亚洲精品一区二区三区影院| 久久精品亚洲天堂| 国产精品久久久久久吹潮| 色婷婷精品大视频在线蜜桃视频| 日本a视频在线观看| 亚洲精品天堂| 一区二区三区日韩| 黄色影视在线观看| www.在线视频| 亚洲精品视频在线看| 国产又大又长又粗又黄| 欧洲美女少妇精品| 国产精品高潮呻吟久久| 一区二区在线观| 国产丝袜在线| 亚洲综合男人的天堂| 日本香蕉视频在线观看| 免费av不卡在线观看| 亚洲国产中文字幕在线视频综合| 国产 欧美 日韩 一区| 日本色护士高潮视频在线观看| 亚洲免费观看在线观看| 国产一区 在线播放| 永久免费毛片在线观看| 国产喷水吹潮视频www| 激情伊人五月天久久综合| 国产一区二中文字幕在线看| 亚洲午夜精品久久久| 久久精品国产精品亚洲红杏| 成人写真福利网| 精品久久久久中文慕人妻| 国产成人精品1024| 狠狠色噜噜狠狠色综合久| 人人九九精品| 国产精品污污网站在线观看| 三级在线免费观看| ****av在线网毛片| 色婷婷综合久久久久中文| 男女视频在线看| 亚洲国产欧美国产第一区| 亚洲国产精品嫩草影院久久| 日韩人妻一区二区三区| 久久人人88| 97免费视频在线播放| 天天爱天天做天天爽| 国产又粗又猛又爽又黄91精品| 亚洲伊人久久综合| 日本午夜在线视频| 《视频一区视频二区| 免费一级特黄特色毛片久久看| 欧美精品总汇| 欧美日韩1区| 欧美三级日韩三级| 中文字幕人妻熟女人妻a片| av成人综合| 一本色道久久88亚洲综合88| avtt天堂在线| 久久午夜影视| 成人免费视频视频在| 韩国中文免费在线视频| 亚洲精品国产无套在线观 | 亚洲精品看片| 国产主播精品在线| 全色精品综合影院| 亚洲日本丝袜连裤袜办公室| 国产亚洲天堂网| 日本精品视频| 在线国产精品播放| 国产福利久久久| 久久99深爱久久99精品| 精品无码久久久久国产| www国产在线观看| 欧美主播一区二区三区| 亚洲熟女乱综合一区二区三区| 爽成人777777婷婷| 国产成人免费av电影| 亚洲国产一二三区| √…a在线天堂一区| 国产精品人人爽人人爽| 清纯唯美亚洲经典中文字幕| 久久69精品久久久久久国产越南| 欧美性受xxx黑人xyx性爽| 99精品热视频| 9色porny| 日韩视频1区| 精品国产一区久久久| 免费精品一区二区| xfplay精品久久| www.射射射| 一本色道69色精品综合久久| 精品国模在线视频| 一级黄色大片免费| 欧美韩国日本综合| 亚欧在线免费观看| 最新亚洲精品| 日本精品性网站在线观看| 午夜视频免费看| 欧美日韩性生活视频| 中文字幕一区二区人妻电影丶| 欧美色一级片| 成人高清在线观看| 久久www人成免费看片中文| 日韩三级精品电影久久久| 欧美色图亚洲视频| 国产成人免费在线观看不卡| 国产一区二区三区播放| 日韩在线精品强乱中文字幕| 美女视频黄久久| 日本免费久久高清视频| 清纯唯美亚洲色图| 黑人巨大精品欧美一区二区三区 | 国产普通话bbwbbwbbw| 国产精品久久久久永久免费观看| 另类小说第一页| 日韩1区在线| 91久久综合亚洲鲁鲁五月天| 91麻豆国产福利在线观看宅福利| 日韩一区二区免费电影| 久久视频免费看| jvid福利写真一区二区三区| 东京热加勒比无码少妇| 国产探花在线精品一区二区| 国产精品人人做人人爽| 免费超碰在线| 日韩女优电影在线观看| 日韩精品视频免费看| 久久天天做天天爱综合色| 一区二区三区国产免费| 亚洲破处大片| 精品国产一区二区三| 桃花岛tv亚洲品质| 久热精品在线视频| 天堂网在线资源| 在线视频综合导航| 日韩a级片在线观看| 97久久久精品综合88久久| youjizzxxxx18| 欧美久久影院| 蜜桃视频日韩| 3d动漫一区二区三区在线观看| 欧美猛男性生活免费| 亚洲欧洲综合在线| 欧美精品乱码久久久久久| 国产一级中文字幕| 国产欧美精品一区二区色综合朱莉 | 9a蜜桃久久久久久免费| 亚洲色图官网| 成年无码av片在线| 青青青免费视频在线2| 欧美精品乱码久久久久久按摩| 日韩欧美一区二区一幕| 国产精品毛片a∨一区二区三区| 中文字幕av一区二区三区人妻少妇| 亚洲精品色图| 综合网五月天| 自拍亚洲一区| 99re视频在线观看| 日本少妇一区| 97人人模人人爽人人喊中文字| 成人性生交大片免费看午夜 | 一级黄色大片免费看| 三级不卡在线观看| 青春草国产视频| 日韩欧美1区| 久久天天狠狠| 中文字幕亚洲在线观看| 国产精品午夜一区二区欲梦| 91黄页在线观看| 久久九九有精品国产23| 毛片在线能看| 亚洲第一男人av| 国产免费一区二区三区免费视频| 色综合久久久久久久| 久久av高潮av无码av喷吹| 国产精品美女久久久久av爽李琼 | 一区二区三区精品| 青青青视频在线播放| 久久综合九色综合97婷婷| 亚洲精品成人无码毛片| 狠狠久久亚洲欧美| 在线免费av播放| 久久久噜噜噜| 九色在线视频观看| 在线播放日韩| 日本阿v视频在线观看| 亚洲综合小说| 秋霞在线一区二区| 日韩视频在线观看| 五月天综合网| 成人激情视频| 亚洲成人午夜在线| 精品一区二区三| 欧美日韩在线不卡一区| 亚洲图区在线| 在线免费观看日本欧美| wwwww在线观看| 国产一区二区三区在线观看免费| 中文字幕 91| 秋霞成人午夜伦在线观看| 美女网站免费观看视频| 三级成人在线视频| 日韩不卡一二三| 蜜臀久久99精品久久久久久9| 成年人免费在线播放| 久久精选视频| 一区二区xxx| 蜜桃久久精品一区二区| 粉色视频免费看| 狠狠色狠狠色综合| 国产又粗又猛又爽又黄| 国产成人精品亚洲777人妖 | 青娱乐在线免费视频| 在线看日本不卡| 又骚又黄的视频| 777a∨成人精品桃花网| 国产婷婷一区二区三区久久| 日韩一级片在线播放| 亚洲国产中文字幕在线| 亚洲成人网在线观看| 午夜视频在线播放| 在线观看国产欧美| 免费大片在线观看www| 欧美福利在线观看| 欧美激情20| 国产精品久久久av| 福利一区三区| 精品高清视频| 青青草97国产精品麻豆| 青青在线免费视频| 亚洲免费精品| 91国产精品视频在线观看| 国产一区二区三区av电影| 国产高潮视频在线观看| 国产午夜精品一区二区| 黄色一级大片在线免费观看| 亚洲国产综合在线| 日本三级一区二区三区| 欧美一区二区三区婷婷月色| 日韩一级中文字幕| 在线精品播放av| 日本动漫同人动漫在线观看| 8x拔播拔播x8国产精品| 国产成人亚洲一区二区三区| 国产a一区二区| 欧美日韩一区二区综合| 成人免费在线视频播放| 日一区二区三区| 黑人玩弄人妻一区二区三区| 久久人人超碰精品| 青草影院在线观看| 欧美性生活大片免费观看网址| 国产精品美女一区| 亚洲男人天堂久| 日韩免费影院| 国产精品偷伦视频免费观看国产| 福利电影一区| 国产日本欧美在线| 久久精品123| 任你躁av一区二区三区| 亚洲欧洲另类国产综合| 三级视频在线观看| 日韩欧美成人一区二区| 在线观看完整版免费| 国产91精品黑色丝袜高跟鞋| 精品中文字幕一区二区三区四区| 欧洲一区二区日韩在线视频观看免费 | 欧美挤奶吃奶水xxxxx| 中文精品一区二区三区| 久久中文精品| 成人区人妻精品一区二| 成人欧美一区二区三区白人 | 国产伦精品一区二区三区视频青涩 | 一道本在线免费视频| 91在线观看一区二区| 久艹视频在线观看| 欧美一区二区在线免费播放| 成人动漫在线免费观看| 青青草国产精品一区二区| 东京久久高清| 日韩精品手机在线观看| 精品一区二区三区欧美| 真实乱视频国产免费观看| 欧美性生交xxxxxdddd| 神马精品久久| 91精品国产乱码久久久久久久久| 亚洲成人偷拍| 日韩一区二区高清视频| 久久精品国产一区二区| 久久久久久久毛片| 在线观看精品一区| 可以在线观看的黄色| 91av在线播放视频| 露出调教综合另类| av在线播放亚洲| av在线播放成人| 日本最新中文字幕| 亚洲成人网久久久| 三级在线看中文字幕完整版| 国产一区二区在线观看免费播放| 欧美日韩蜜桃| 国产51自产区| 午夜久久久久久| 亚洲人在线观看视频| 91av中文字幕| 少妇精品久久久一区二区三区 | 日韩精品99| 日本免费高清不卡| 老司机免费视频一区二区| 日本女人性生活视频| 91麻豆精品国产自产在线| 91亚洲天堂| 久久99精品久久久久久秒播放器| 一本色道久久精品| 国产又粗又猛又爽视频| 欧美三日本三级三级在线播放| 91se在线| av蓝导航精品导航| 亚洲东热激情| 能免费看av的网站| 欧美日韩一区二区三区高清| 高清全集视频免费在线| 高清不卡一区二区三区| 国产亚洲精品v| 亚洲第一视频区| 日韩午夜在线播放| 久草在线资源站手机版| 日本一区高清在线视频| 久久精品国产**网站演员| 久艹视频在线观看| 亚洲一区二区久久| 精品一区二区三区中文字幕| 天天夜碰日日摸日日澡性色av| 久久精品亚洲国产奇米99| 国产免费久久久| 热久久视久久精品18亚洲精品| 久久视频在线| 艳妇乳肉亭妇荡乳av| 欧美在线一二三四区| 香蕉久久aⅴ一区二区三区| 麻豆精品传媒视频| 国产在线精品免费| 黄色在线免费观看| 久久精品国产成人| 美女av一区| 亚洲三级在线观看视频| 亚州成人在线电影| 在线免费观看黄| 精品国产综合| 国产在线视视频有精品| av黄色在线看| 久久综合国产精品台湾中文娱乐网| 日日天天久久| www.偷拍.com| 欧美丝袜第三区|