亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

QNX 7.0.0開發(fā)實戰(zhàn):從微內核到車載系統(tǒng),避坑指南與性能調優(yōu)

QNX 7.0.0開發(fā)實戰(zhàn):從微內核到車載系統(tǒng),避坑指南與性能調優(yōu) 1. 項目概述從零到一我的QNX 7.0.0實戰(zhàn)心路最近在整理硬盤翻出來一個塵封已久的項目文件夾里面全是關于QNX 7.0.0的筆記、腳本和調試日志。這個項目當時是為一個車載信息娛樂系統(tǒng)的原型開發(fā)做的底層平臺適配斷斷續(xù)續(xù)搞了小半年踩的坑比寫的代碼都多?,F在QNX在汽車、工業(yè)控制這些對實時性和可靠性要求極高的領域越來越火但相關的、成體系的、能落地的中文開發(fā)總結卻不多見。網上能找到的要么是年代久遠的舊版本資料要么就是官方文檔的簡單翻譯真正從環(huán)境搭建到問題排查把整個流程串起來講的干貨很少。所以我想把自己在QNX 7.0.0上摸爬滾打的經驗系統(tǒng)地梳理出來。這不是一份官方的操作手冊而是一個一線開發(fā)者視角的實戰(zhàn)記錄。我會重點分享那些官方文檔里不會寫但實際開發(fā)中一定會遇到的“坑”以及我是怎么填上這些坑的。無論你是剛剛接觸QNX正在為搭建開發(fā)環(huán)境發(fā)愁還是已經有一定基礎但在驅動開發(fā)、系統(tǒng)調試上遇到了瓶頸希望這篇總結里的一些思路和技巧能給你帶來實實在在的幫助。我們不止要“跑起來”更要理解它為什么這樣跑出了問題該怎么找原因。2. 核心認知QNX 7.0.0的變與不變在真正動手之前我們必須先建立起對QNX 7.0.0的正確認知。很多人包括最初的我容易把它想象成一個“超級Linux”或者“嵌入式版的Unix”這種類比在初期能幫助理解但深入后會發(fā)現很多差異直接套用Linux的經驗會走彎路。2.1 微內核架構的深刻影響QNX最核心的特點是其真正的微內核Microkernel架構。在Linux這樣的宏內核Monolithic Kernel系統(tǒng)中文件系統(tǒng)、網絡協議棧、設備驅動等大量服務都運行在內核空間。而QNX的微內核非常精簡只負責最基礎的任務調度、進程間通信IPC和中斷處理其他所有組件包括文件系統(tǒng)、網絡協議棧甚至設備驅動都以獨立的、在用戶空間運行的進程在QNX中常稱為“資源管理器”形式存在。這個設計帶來了幾個直接影響高可靠性一個組件如某個文件系統(tǒng)崩潰通常只會導致該進程終止而不會讓整個系統(tǒng)垮掉。內核可以重啟這個進程。這在安全關鍵領域是至關重要的。靈活的模塊化你可以動態(tài)地啟動、停止或替換系統(tǒng)組件而不需要重啟內核。這在開發(fā)調試時非常方便。性能考量由于服務進程化組件間的通信從內核內的函數調用變成了進程間的消息傳遞IPC。這帶來了額外的開銷。因此QNX的IPC機制主要是MsgSend/MsgReceive/MsgReply被設計得極其高效是系統(tǒng)的生命線。理解并正確使用IPC是高效QNX編程的關鍵。在7.0.0版本中這個核心架構哲學沒有變但底層實現和配套工具鏈有了顯著增強為開發(fā)帶來了新的便利和挑戰(zhàn)。2.2 7.0.0版本的關鍵演進與開發(fā)環(huán)境巨變從我實際使用的感受來看QNX 7.0.0相較于之前的6.6.x系列有幾個變化是開發(fā)者必須關注的1. 工具鏈的全面革新LLVM/Clang成為默認這是最大的變化之一。早期QNX使用GNU工具鏈gcc gdb。從7.0開始官方轉向了LLVM/Clang作為默認的編譯和調試工具鏈。這意味著編譯命令變了你不再主要使用qcc一個GCC的包裝腳本而是使用qcc現在它可能調用clang或者直接使用clang針對QNX目標配置好的。調試器變了默認的調試器從gdb變成了lldb。雖然gdb可能仍可用但官方支持和未來的新特性都會集中在lldb上。你的調試習慣和腳本可能需要調整。二進制兼容性使用新工具鏈編譯的庫和二進制文件與舊工具鏈編譯的可能存在不兼容。如果你有遺留的二進制庫需要鏈接要特別注意。2. 對C11/14標準的更好支持隨著工具鏈升級對現代C標準的支持更加完善。這對于開發(fā)新的、需要利用現代C特性的應用程序比如車載中間件是利好。但在移植舊代碼時要注意編譯器可能變得更“嚴格”一些不規(guī)范的舊代碼可能會編譯報錯。3. 內核與驅動的持續(xù)優(yōu)化官方會持續(xù)優(yōu)化調度器、IPC性能和內存管理。對于開發(fā)者而言這通常意味著更好的整體性能和更低的延遲但一些極端依賴特定時序的代碼可能需要重新驗證。4. 包管理系統(tǒng)的演進QNX Software Center以前叫Momentics IDE的安裝器和pkgin包管理工具也在更新。7.0.0的BSP板級支持包和系統(tǒng)鏡像的獲取、安裝方式可能略有不同需要按照最新的官方指南操作。注意不要試圖在非QNX官方支持的Linux發(fā)行版如最新的Ubuntu上強行安裝老版本的QNX SDP。版本兼容性問題尤其是glibc版本會導致各種詭異的安裝失敗和運行時錯誤。強烈建議使用QNX官方文檔中明確指出的宿主操作系統(tǒng)版本或者直接使用其提供的虛擬機鏡像。3. 開發(fā)環(huán)境搭建避坑指南與高效配置搭建一個穩(wěn)定、高效的QNX開發(fā)環(huán)境是項目成功的第一步也是勸退很多新手的第一個門檻。我結合自己的經驗梳理出一條最穩(wěn)妥的路徑。3.1 宿主系統(tǒng)選擇與QNX SDP安裝宿主系統(tǒng)雖然QNX SDPSoftware Development Platform理論上支持多個Linux發(fā)行版但為了減少不必要的麻煩我強烈建議你嚴格按照當前QNX 7.0.0官方發(fā)布說明Release Notes中指定的版本去選擇。例如它可能明確支持Red Hat Enterprise Linux 7.x或8.x的某個特定版本。使用這些版本可以最大程度避免庫依賴和內核模塊兼容性問題。安裝方式獲取安裝包從QNX官網或授權的軟件中心下載QNX SDP 7.0.0的安裝包通常是一個.run文件。執(zhí)行安裝在終端中賦予執(zhí)行權限后運行安裝腳本。chmod x qnx-700-*.run ./qnx-700-*.run安裝過程是圖形化的你需要接受許可協議、選擇安裝路徑例如/opt/qnx700和要安裝的組件。關鍵組件選擇QNX Target Filesystem目標系統(tǒng)的根文件系統(tǒng)模板必須裝。BSPs根據你的目標硬件如Intel x86, ARM v7/v8, 某款特定SoC選擇對應的板級支持包。這是讓QNX在你硬件上跑起來的基礎。Host Utilities在宿主機上運行的工具如mkifs制作鏡像、mkimage等必須裝。QNX Momentics IDE這是一個基于Eclipse的集成開發(fā)環(huán)境。對于新手或者進行大型應用開發(fā)使用IDE會方便很多特別是調試。建議安裝。環(huán)境變量配置安裝完成后最重要的一步是配置環(huán)境變量。安裝腳本通常會在~/.bashrc或~/.profile中為你添加一行source命令用于加載環(huán)境設置腳本。# 例如如果安裝在 /opt/qnx700 source /opt/qnx700/qnxsdp-env.sh執(zhí)行此腳本后它會設置QNX_HOST,QNX_TARGET,PATH等關鍵環(huán)境變量。每次打開新的終端進行QNX開發(fā)前都需要先source這個腳本或者把這行命令加到你的shell配置文件中讓它自動執(zhí)行。3.2 目標系統(tǒng)鏡像構建與部署有了SDP和BSP下一步就是為你的目標板制作一個可以啟動的系統(tǒng)鏡像.ifs文件。理解Buildfile這是制作QNX鏡像的“食譜”一個文本文件。它定義了鏡像中包含哪些文件、庫、驅動資源管理器和啟動腳本。BSP包里通常會提供幾個示例Buildfile如build-*。你需要根據你的硬件和需求修改它。關鍵修改點啟動行startup line指定啟動程序通常是startup-*和傳遞給它的參數如CPU類型、內存地址、控制臺端口等。這里的參數必須與你的硬件嚴格匹配否則無法啟動。PATH設置確保PATH包含了你的應用程序所在目錄。驅動模塊通過[script]或[typelink]等方式將需要的驅動如串口、網絡、USB、顯示驅動包含進鏡像。新手常犯的錯誤是漏掉了關鍵驅動導致系統(tǒng)啟動后某些硬件無法使用。啟動腳本在[script]部分你可以編寫一個.sh腳本在系統(tǒng)啟動的最后階段執(zhí)行用于掛載文件系統(tǒng)、啟動你的主應用程序等。構建鏡像使用mkifs命令。mkifs -v -r../install/armle-v7/ my_buildfile my_image.ifs-v顯示詳細信息便于調試。-r指定目標文件系統(tǒng)的根目錄路徑通常指向你安裝的BSP中的target/qnx7/armle-v7以ARM為例或x86_64等。my_buildfile你的Buildfile文件名。my_image.ifs輸出的鏡像文件名。部署到硬件部署方式取決于硬件U盤/SD卡直接將.ifs文件拷貝到存儲設備的特定分區(qū)通常需要先格式化如FAT32并確保硬件從該設備啟動。網絡啟動TFTP對于支持網絡啟動的開發(fā)板可以將.ifs文件放在TFTP服務器目錄配置Bootloader如U-Boot從網絡加載并啟動它。這是最快速的開發(fā)調試方式因為修改代碼重建鏡像后無需物理插拔存儲設備直接重啟板子即可加載新鏡像。燒寫Flash對于最終產品需要將鏡像燒寫到Nor/Nand Flash中。3.3 宿主-目標機連接與調試基礎系統(tǒng)在目標板上跑起來后你需要建立宿主機和目標機之間的通信橋梁。串口控制臺這是最基礎、最可靠的連接方式用于系統(tǒng)最初級的啟動信息輸出和命令行交互。你需要一根USB轉串口線如果板子有串口。在宿主機上使用screen、minicom或picocom等工具連接對應的串口設備如/dev/ttyUSB0設置正確的波特率通常是115200、數據位、停止位和校驗位通常是8N1。screen /dev/ttyUSB0 115200連接成功后你就能看到QNX的啟動日志并在出現#提示符后輸入命令。網絡連接這是高效開發(fā)的關鍵。QNX默認運行一個名為io-pkt的網絡協議棧作為一個進程。你需要確保目標板網線連接正常并且在Buildfile中正確配置并啟動了網絡驅動如devn-emac.so和io-pkt。在目標板啟動后使用ifconfig命令配置IP地址或通過DHCP獲取。在宿主機上確保能與目標板IP互相ping通。QNX Momentics IDE連接如果你使用IDE需要在IDE中創(chuàng)建“QNX System Information”項目填寫目標板的IP地址和登錄憑證QNX系統(tǒng)默認有一個無密碼的root用戶。連接成功后IDE可以遠程查看目標板進程、文件系統(tǒng)并進行源碼級調試。命令行調試不使用IDE時主要依靠lldb。在目標板上你的程序需要編譯時加入-g選項包含調試信息。在目標板上啟動程序時可以附加pidin觀察或者讓程序在開頭sleep一段時間。在宿主機上使用lldb連接目標板進行調試# 在宿主機上 lldb my_app (lldb) platform select qnx (lldb) platform connect connect://target_ip:port # 需要目標板運行l(wèi)ldb-server (lldb) target attach pid # 或者直接運行 file my_app; run難點在于需要在目標板上運行l(wèi)ldb-server或pdebug。一種常見做法是將lldb-server打包進系統(tǒng)鏡像在啟動腳本中運行它。具體步驟請參考QNX官方關于lldb遠程調試的文檔。4. 核心開發(fā)實戰(zhàn)從應用到驅動環(huán)境搭好通信建立真正的開發(fā)工作就開始了。QNX開發(fā)可以分為應用層和系統(tǒng)層驅動/資源管理器。4.1 應用開發(fā)擁抱現代工具鏈與IPC編譯與鏈接 現在你的qcc很可能背后是Clang。一個典型的編譯命令如下qcc -Vgcc_ntoarmv7le -g -O2 -Wc,-stdc11 my_app.cpp -o my_app -lmy_lib-V指定編譯器變體。gcc_ntoarmv7le是一個歷史名稱現在它指向的是針對ARMv7小端的Clang工具鏈。對于x86_64可能是gcc_ntox86_64。使用qcc -V命令可以列出所有可用的變體。-g加入調試信息。-Wc,...將后面的參數傳遞給C/C編譯器Clang。這里指定使用C11標準。鏈接時確保你的庫路徑-L和庫名-l正確。QNX的系統(tǒng)庫通常不需要特別指定。進程間通信IPC這是QNX應用的靈魂。最核心的是消息傳遞Message Passing。// 客戶端發(fā)送請求 int chid ChannelCreate(0); // 創(chuàng)建頻道 int coid ConnectAttach(0, 0, chid, _NTO_SIDE_CHANNEL, 0); // 連接通常服務端頻道已知 MsgSend(coid, send_msg, sizeof(send_msg), reply_msg, sizeof(reply_msg)); // 發(fā)送并等待回復 // 服務端接收請求 int rcvid MsgReceive(chid, rcv_msg, sizeof(rcv_msg), NULL); // 接收消息 // ... 處理請求 ... MsgReply(rcvid, EOK, reply_msg, sizeof(reply_msg)); // 回復阻塞式MsgSend是阻塞的客戶端會一直等待服務器MsgReply。這提供了天然的同步。高效消息傳遞通常涉及內存拷貝但對于小消息QNX內核會優(yōu)化為傳遞指針非??臁顟B(tài)MsgReceive可以接收來自任何連接connection的消息rcvid唯一標識了一次交互用于后續(xù)的MsgReply。實戰(zhàn)技巧對于復雜的服務通常會用一個線程專門MsgReceive然后將任務分發(fā)給工作線程池處理最后再由接收線程或工作線程MsgReply。要小心處理MsgReply的時機避免客戶端永久等待。多線程與同步QNX提供了POSIX標準的線程pthread和同步原語互斥鎖mutex、條件變量condvar、信號量semaphore。用法與Linux上類似。需要注意的是QNX的調度策略如SCHED_FIFO,SCHED_RR,SCHED_SPORADIC對實時性影響很大需要根據任務關鍵程度合理設置線程優(yōu)先級和策略。4.2 驅動與資源管理器開發(fā)在QNX中設備驅動被稱為“資源管理器”Resource Manager。它本質上是一個特殊的用戶態(tài)進程負責將設備操作open, read, write, ioctl等映射到底層硬件寄存器或邏輯操作。核心結構一個資源管理器的主要工作是填充一個resmgr_io_funcs_t結構體這個結構體包含了各種處理函數如open,read,write,devctl等然后通過resmgr_attach()將這些函數與一個路徑名如/dev/mydevice關聯起來。開發(fā)流程簡述定義設備操作函數實現io_open,io_read,io_write,io_devctl等回調函數。初始化資源管理器框架調用resmgr_attach()。進入消息循環(huán)通常調用dispatch_block()或自己寫循環(huán)調用MsgReceive來接收來自客戶端即應用程序的IO消息。處理IO消息在消息循環(huán)中調用resmgr_msg_again()或resmgr_msg_handle()等函數框架會自動將消息分派到你之前注冊的回調函數中。硬件交互在你的io_read/io_write/io_devctl函數中通過mmap映射硬件寄存器內存或者使用ioport等函數進行端口IO來實現實際的硬件控制。一個簡單的示例骨架#include sys/resmgr.h #include sys/dispatch.h static resmgr_connect_funcs_t connect_funcs; static resmgr_io_funcs_t io_funcs; static iofunc_attr_t attr; int io_open(resmgr_context_t *ctp, io_open_t *msg, RESMGR_HANDLE_T *handle, void *extra) { // 檢查權限初始化上下文等 return iofunc_open_default(ctp, msg, handle, extra); } ssize_t io_read(resmgr_context_t *ctp, io_read_t *msg, RESMGR_OCB_T *ocb) { // 從硬件讀取數據填充到msg-i數據緩沖區(qū) // 返回讀取的字節(jié)數 return _RESMGR_NPARTS(0); // 示例實際需返回數據和大小 } int main(int argc, char **argv) { resmgr_attr_t rattr; dispatch_t *dpp; resmgr_context_t *ctp; int id; // 1. 創(chuàng)建分發(fā)句柄和上下文 if((dpp dispatch_create()) NULL) { ... } // 2. 初始化屬性結構和函數表 iofunc_func_init(_RESMGR_CONNECT_NFUNCS, connect_funcs, _RESMGR_IO_NFUNCS, io_funcs); iofunc_attr_init(attr, ...); io_funcs.open io_open; io_funcs.read io_read; // ... 賦值其他函數 // 3. 設置資源管理器屬性 memset(rattr, 0, sizeof rattr); rattr.nparts_max 1; rattr.msg_max_size 2048; // 4. 附加資源管理器到路徑 if((id resmgr_attach(dpp, rattr, /dev/mysample, _FTYPE_ANY, 0, connect_funcs, io_funcs, attr)) -1) { ... } // 5. 進入消息循環(huán) ctp resmgr_context_alloc(dpp); while(1) { if((ctp resmgr_block(ctp)) NULL) { ... } resmgr_msg_again(ctp); } }驅動開發(fā)難點中斷處理資源管理器本身運行在用戶態(tài)不能直接處理中斷。通常需要配合一個運行在內核態(tài)或高優(yōu)先級的“中斷服務例程”ISR。ISR通常只做最少的處理如清除中斷標志、發(fā)一個脈沖然后通過InterruptAttachEvent()或InterruptAttach()關聯一個事件或線程由資源管理器線程來處理后續(xù)復雜的邏輯。內存映射mmap讓應用程序可以直接訪問設備內存能極大提升性能如顯卡幀緩沖區(qū)。這需要在資源管理器中實現io_mmap函數。devctl()這是實現自定義控制命令的瑞士軍刀。應用程序通過devctl(fd, MY_CMD, data, sizeof(data), NULL)來調用驅動中io_devctl函數對應的處理分支。5. 系統(tǒng)調試與性能剖析實戰(zhàn)當程序行為異常或性能不達標時QNX提供了一套強大的工具鏈來幫你定位問題。5.1 日志與系統(tǒng)狀態(tài)觀察slog2info系統(tǒng)日志工具。QNX有一個結構化的日志系統(tǒng)slog2。使用slog2info可以查看內核和進程產生的日志。在Buildfile中確保啟動了slog2ger否則日志可能無法持久化或查看。slog2info -w # 實時查看日志pidin這是你的“任務管理器”。可以查看進程、線程、內存、通道、連接等幾乎所有系統(tǒng)狀態(tài)。pidin info # 顯示系統(tǒng)摘要內存、CPU使用率 pidin arg # 顯示所有進程及其參數 pidin mem # 顯示內存使用詳情 pidin tid # 顯示所有線程及其狀態(tài)、優(yōu)先級 pidin -p pid tid # 查看特定進程的線程hogs實時顯示哪些進程/線程占用了最多的CPU時間對定位CPU熱點非常有用。ls -l /dev/shmem查看共享內存對象排查內存泄漏或異常共享內存。5.2 性能分析工具tracelogger和traceprinterQNX的系統(tǒng)跟蹤框架??梢杂涗泝群耸录{度、IPC、中斷和用戶自定義事件。記錄tracelogger -c -f trace.dat開始記錄。觸發(fā)你的測試場景。停止tracelogger -t停止記錄。分析traceprinter -f trace.dat -n以文本形式輸出?;蛘呤褂脠D形化的Trace Analyzer在Momentics IDE中進行可視化分析可以看到線程狀態(tài)隨時間的變化圖直觀找出阻塞、等待IPC的地方。instrumented內核要使用tracelogger的完整功能你需要構建并運行一個帶有“instrumentation”選項的內核。BSP中通常會有對應的buildfile如build-instrumented。這個內核性能有損耗僅用于性能分析不要用于生產環(huán)境。slay強制終止進程。slay -f process_name可以強制殺死一個進程。在調試時非常有用但要小心使用。5.3 常見問題排查實錄以下是我在項目中遇到的幾個典型問題及解決思路問題1系統(tǒng)啟動后我的應用程序沒有自動運行。排查檢查串口啟動日志看是否有錯誤信息特別是你的應用程序或它依賴的庫是否報“找不到”或“權限拒絕”。在Buildfile的[script]部分確認啟動你應用的命令是否正確路徑是否有效。一個常見錯誤是路徑中使用了宿主機路徑而非目標板路徑。登錄到目標板通過串口或網絡手動嘗試運行你的應用命令根據報錯信息進一步排查如庫依賴ldd權限chmod。心得在Buildfile的啟動腳本里在關鍵命令前后加上echo語句輸出到控制臺是追蹤啟動過程的最簡單有效方法。問題2應用程序運行一段時間后卡死或無響應。排查使用pidin tid查看相關線程的狀態(tài)。如果線程狀態(tài)是RECEIVE、REPLY或SEND說明它很可能在IPC上阻塞了。結合代碼分析它在等待誰的消息或回復。使用pidin -p pid fd查看進程打開了哪些文件描述符是否有未關閉的資源。檢查是否有死鎖。特別是使用互斥鎖時是否在同一個線程內重復加鎖非遞歸鎖或者多個線程以不同的順序獲取多個鎖。使用tracelogger記錄卡死前后的活動分析線程交互。心得在QNX中由于MsgSend是同步阻塞的設計不當很容易造成死鎖A等B的回復B也在等A的回復。清晰的客戶端-服務器架構和超時機制MsgSendPulse,TimerTimeout很重要。問題3系統(tǒng)實時性不達標偶爾出現響應延遲。排查使用hogs和pidin tid查看在延遲發(fā)生時是哪個低優(yōu)先級線程占用了大量CPU搶占了高優(yōu)先級實時線程。檢查中斷屏蔽。過長的中斷禁用時間會導致高優(yōu)先級線程也無法被調度。使用tracelogger查看中斷和線程調度序列。檢查是否有“優(yōu)先級反轉”。低優(yōu)先級線程持有了高優(yōu)先級線程需要的鎖。QNX提供了優(yōu)先級繼承互斥鎖PTHREAD_PRIO_INHERIT可以在一定程度上緩解此問題。檢查內存分配malloc。在實時線程中頻繁分配釋放內存可能觸發(fā)垃圾回收或引起內存碎片整理導致不可預測的延遲。實時關鍵路徑上應避免動態(tài)內存分配使用靜態(tài)或池化內存。心得實時性調試是系統(tǒng)工程。需要從硬件中斷延遲、驅動設計、線程優(yōu)先級分配、鎖的使用、內存管理等多個層面綜合分析。tracelogger是解決這類問題的終極武器。問題4網絡性能不佳吞吐量低。排查確認io-pkt進程是否以最優(yōu)參數運行。例如可以嘗試調整接收/發(fā)送描述符數量。使用netstat -i查看網絡接口是否有大量的錯誤或丟包。使用pidin -p pid_of_io-pkt mem查看io-pkt進程的內存使用看是否因為內存不足導致性能下降。檢查是否使用了正確的網絡驅動devn-*.so版本并與網卡硬件匹配。心得網絡性能調優(yōu)往往需要結合具體硬件和驅動。查閱BSP包中關于網絡驅動的說明文檔有時會提供性能優(yōu)化的配置示例。6. 構建與部署自動化手動執(zhí)行命令效率太低且容易出錯。將構建和部署過程自動化是專業(yè)開發(fā)的必備環(huán)節(jié)。6.1 使用Makefile組織項目一個結構清晰的Makefile能極大提升效率。QNX的qcc可以很好地集成到Makefile中。# 工具鏈前綴根據目標架構修改 CROSS_COMPILE ntoarmv7- CC $(CROSS_COMPILE)qcc LD $(CROSS_COMPILE)qcc CFLAGS -Vgcc_ntoarmv7le -g -O2 -Wc,-stdc11 -Wall LDFLAGS -Vgcc_ntoarmv7le # 源文件和目標 SRCS main.cpp device_manager.cpp network_service.cpp OBJS $(SRCS:.cpp.o) TARGET my_system_app # 默認目標 all: $(TARGET) # 鏈接 $(TARGET): $(OBJS) $(LD) $(LDFLAGS) -o $ $^ -lmy_lib -lsocket # 編譯 %.o: %.cpp $(CC) $(CFLAGS) -c $ -o $ # 清理 clean: rm -f $(OBJS) $(TARGET) # 部署到目標板假設已配置好網絡和路徑 deploy: $(TARGET) scp $(TARGET) root192.168.0.100:/tmp/ ssh root192.168.0.100 slay -f $(TARGET) 2/dev/null; cd /tmp ./$(TARGET) .PHONY: all clean deploy你可以為不同的構建目標Debug/Release x86/ARM定義不同的變量組合。6.2 集成腳本與持續(xù)集成思路對于更復雜的項目可以編寫Shell或Python腳本將以下步驟串聯從版本庫拉取代碼。調用Makefile編譯所有組件應用、驅動。使用mkifs重新生成系統(tǒng)鏡像。將鏡像部署到TFTP服務器或直接燒錄到測試硬件。重啟硬件并運行自動化測試套件??梢詫⑦@個腳本放到Jenkins、GitLab CI等持續(xù)集成平臺上實現代碼提交后的自動構建、部署和冒煙測試確保主線代碼的穩(wěn)定性。7. 總結與個人體會回顧整個QNX 7.0.0的開發(fā)過程最大的感受是“理念的轉變”。從熟悉的Linux宏內核世界切換到QNX的微內核和消息傳遞世界初期確實有很多不適應。你會不自覺地想去fork一個進程做后臺服務但在QNX里更優(yōu)雅的方式可能是啟動一個獨立的資源管理器進程并通過IPC與之通信。你會擔心頻繁IPC的性能但實測下來在正確的使用方式下它的開銷是可接受的換來的則是系統(tǒng)組件間極佳的隔離性和可靠性。對于新手我的建議是不要急于寫代碼先花時間理解微內核和IPC模型。把官方文檔里關于MsgSend、MsgReceive、資源管理器的章節(jié)反復讀幾遍并動手寫一些簡單的示例。這比一上來就移植一個復雜的Linux應用要高效得多。關于工具鏈擁抱LLVM/Clang和LLDB是大勢所趨。雖然切換初期會有陣痛比如一些舊的GCC特有語法或編譯選項需要調整LLDB的命令也和GDB有所不同但新的工具鏈在錯誤提示、代碼優(yōu)化等方面通常更有優(yōu)勢。盡早適應利大于弊。最后調試是QNX開發(fā)中最重要的技能之一。pidin,hogs,slog2info是你的日?;锇槎鴗raceloggerTrace Analyzer則是解決復雜性能問題和死鎖的“核武器”。一定要學會使用它們。遇到問題多觀察系統(tǒng)狀態(tài)多打日志結構化slog2比printf更強大從系統(tǒng)級視角去分析往往能更快地定位到根因。QNX是一個為高可靠、強實時而生的系統(tǒng)它的設計哲學滲透在每一個細節(jié)里。理解并遵循這套哲學而不僅僅是把它當做一個工具你才能更好地駕馭它構建出真正穩(wěn)定、高效的嵌入式系統(tǒng)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲污污网站| 亚州人妻| 中日韓欧美高清| 91在线美女| 亚洲图片激情综合另类| 深夜激情| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 熟女熟妇一区二区三区视频| 亚洲日韩一区电影| 凸凹视频在线观看| 日韩免费在线观看不卡| 97av,com| 精品久久久久黄少妇| 交换娇妻呻吟声不停中文字幕| 蜜桃成人1区2区3区| 日韩偷拍一区二区三区| 亚洲色宗合| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 亚洲三区视频| 97中文字幕一区| 九九综合久久| 精品日日人妻| 久久视网78| 久久极品一区二区| 伊人午夜福利视频| 天美麻豆精品视频99| 99在线免费公开视频| 中出欧美| 伊人宅男大香蕉| 日本精品人妻少妇一区二区| 丁香五月天啪啪| 青椒国产97在线熟女| 99人妻碰碰碰久久久久禁片| 日韩熟女精一区二区三区不卡| 熟女网站最新| 九九亚洲精品| 欧美日韩国第一区| 国产一区96在线| 亚州AV无码国产精品| 久久国产在线一区二区| 一级毛片电影免费看| 夜夜欧美| 天天激清| 国产视频一区二区三区在线免费观看| 夜夜草天天| 色吧 综合| 超碰97人妻| 天天干18禁| 国产精品丝袜在线| 岛国AB视频| 男人天堂黄片| a网站免费观看| 快点操死我| 骚乳在线| 中文字幕乱在线伦视频中文字幕乱码在线| 色操逼网| 亚洲超碰在线| 日韩啪啪啪啪啪| 激情婷婷五月天| 天天日天天色| 97青青操视频| 欧美 传媒 麻豆 日韩 偷拍| 超碰 av 女人天堂| 国产视频第2页| 无码99| 色性综合| 91精品婷婷国产综合久久竹菊| 一区,二区,三区视频| 久久久久久久久久久久黄色| 人妻人妻天天碰| 黑人干亚洲| 青青草原成人| 97在线视频网站| 亚洲av青草久久一区二区| 欧美一区二区男人天堂| 欧美操逼熟女| 天天日少妇逼AV| 国产精品情侣啪啪| 超碰在线综合97| 精品无吗m| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 久久成人午夜精品影院| 亚欧美综合网| 欧美操逼熟女| 免费中文在线| 欧美91网站| 亚洲av影音先锋| 亚洲天堂美臀在线| 亚洲精品819| 久久久18禁| 职场同事知名国产国产精品久久欧美日韩| 97色操| 日韩性爱啪啪视频| 五月激情天| 色婷婷婷五月天激情四射| 欧美色图99| 色黄污美女啪啪啪免费网站| 午夜精品久久久久久久99蜜桃一| 久久久久久久国产a∨| 精品少妇人妻av久久免费| 欧美爱三级日韩久久| 国产一级不卡在线观看| 78p欧美| 97亚洲色图| 国产精品人人爽人人做可爱福利| 五月丁香六月婷综合成人综合 | 91国产伊人大香蕉| 一区二区精品日韩欧美在线观看| 你懂得91| 欧美玖玖爱免费玖玖| 久久精品熟妇丰满人妻99| 操逼逼一区视频| 午夜福利在线视频1000| 超碰在线91| AA特级绝黄| 丁香五月天婷婷姐| 97精| 久久久亚洲精品电影免费看| 天干天干天干天天做| 中日韩一区二区三区欧美| 久久久久久久国产a∨| 综合干干干av久久久综合网 | 乱伦a片视频| 60秒试看最爽10分钟网站| 国产精品久久久久综合| 欧美黄色大香蕉一区二区| Blackedraw视频一区二区| 人乳av| 91丰满| 欧美中出1| 女人的天堂大香蕉网| 国产人妻久久精品一区二区三区| 亚洲乱色视频一区、二区在线| 人妻天天爽夜夜爽精品2| 日本三级小说中文字幕| 亚洲。日韩。欧美| 天天舔天天日天天射| 激情五月天校园春色网| 婷婷精品国产欧美精品亚洲人人爽| 午夜后入| 69精品| 亚洲污污网站| 亚洲日韩av专区无码| 天美av在线观看| 欧美色网络| 发朗少妇买婬全视频中文| 天天干夜夜鈤| 色女99一级片在线观看| 色五天伊人| 东京热熟女亚洲视频网站| 手机在线中文字幕国产| 午夜精品人妻二区三区| 91美女中出| 婷婷情色综合网| 男啪女色黄无遮挡免费观看| 人人乐大香蕉| 欧亚不卡| 久久久久久久久久久免费精品| 怡红院久久老司机| 大香蕉九九| 久久天天躁日日躁狠狠躁| 免费岛国一级片| 欧美第38页| 日韩免费看在线黄色片| 春色综合免费| 日韩三级一区| 欧美aa一级片| 欧美精品庄| 欧美一区二区情色| 国产亚洲精品美女久久久| 柠檬AV导航| 快播久久人人aV| 日韩不卡在线一区二区| 东京热综合久久一区二区| 精品区9| 天堂综合网| 91电影色诱| 国产精品欧美日韩久久| 老女人综合| 日韩99神马视频片| 国内毛片无码一级毛片| 久久只有精品| 久久噜噜噜精品国产亚洲综合| 五月天婷婷久久| 亚洲本色精品一区二区久久| 啊啊啊轻点在线观看| 久久9精品视频| 欧美亚洲第一页| 婷婷性网| 99热99re6国产在线播放| 99热这里只有精品99| 欧美偷拍区| 天天干夜夜鈤| 青青三级视频| 色999偷自拍拍| 天天天天天天天天天天干美女| 啊啊啊啊好爽好舒服一区二区易域| 色婷婷成人综合| 亚洲操逼网| 人妻81p| 国产 日韩 欧美一区| 91女优在线观看 | www.久久制服糖| 亚洲高清综合网| 神马久久啊啊| 色欧美天天| 激情AV| 久久久国产亚洲精品系列| 东京热一区二区中文字幕| 亚洲日韩国产精品| 国产人妻久久精品一区二区三区| 97超级色碰碰| 天天操熟妇| 久久久久78| 久久亚洲熟妇在线视频| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 天天插天天操| 婷婷激情五月天小说网| 黄色大香焦1级‘′‘| 欧美成熟性爱精品| 一区二区三区美女超清| 中文字幕国产在线天堂| 国产人妖的免费的视频| 国产91av在线播放| 免费一级a毛片久久久久久鸭绿欲| 精品无av| 久久久禁| 欧美传媒一区| 色爽——AV| 蜜桃久久久久久久久久久久| 亚洲激情天堂网| 亚洲激情天堂网| 日韩综合97P| 啊啊啊啊啊啊啊啊啊啊在线观看| 色www精品视频在线观看| 台湾肥佬网一区二区三区| 99.色网| 人妻无码后入| 欧美A√综合网 | 黑丝少妇| 欧美性暴力猛交XXXX| 用力操死我| 老熟女熟妇| 第45页一区二区| 99re6久热只有精品6在线直播| 日韩久久激情精品| 五月婷婷性爱| 91九色在线| 91丨九色丨大屁股| 操香逼| 久久久久元码视频| 亚洲AV色图一区| 91丝袜美女视频| 久久在线观看免费视频 | 日少妇亚洲版| 国产中文字幕在线观看| 偷拍 欧美 日韩| 在现视频女上位好爽| 日本一区二区三区精品| 亚洲精品1区| 午夜美女诱惑电源网| 91香蕉国产尤物视频| 日韩图区 偷拍| 亚洲成人综合在线| 青久操| 国产精品一区二区麻豆| 日逼97| 狠狠久久手机视频精品| 五月婷婷六月丁香| 嫩草影院永久在线制服丝袜| 亚洲少妇自拍中文字幕懂色| 三级日本一区二区三区| 亚洲一区中文字幕一区| 人妻 欧美 中文| 九九热av| 91九色首页| 亚洲视频一二区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 久久久新亚洲AV| 国产69精品久久久久99尤物| 色九九九综合| 久久精品操| 2019久久久久久久久福利| 狠狠中文字幕| K8久久久久| 女性91网站| ′ !γ}丶。。久久精品欧美一区二区三区| 人妻二区| 人人操人人93| 人妻天堂网| 美女骚尻视频| 欧美日韩午夜精品一区二区三区| 69人妻精品一区二区绯色| 96AV久久久| 超碰97 线线 在现| 99精品久久| 日韩97精| 热99这里只有精品| 玖玖资源视频一区二区三区| 干婷婷综合网| 职场同事知名国产国产精品久久欧美日韩| 一二三四视频中文字幕在线看| 乱人伦 国语对白:视频直接看| 亚州欧美综合| 久久婷婷综合国际产色怕| 97视频www| 在线不欧美| 柠檬AV导航| 色踪合AV| 亚洲欧美经典一区二区| 精品少妇一区二区| 欧美1727免费观看视频| 超碰午夜| 亚洲人妻av| 秘书高跟黑色丝袜国产91在线| 一区二区三区四区免费视频| 精品久久大胆人体| 激情小说成人日本无码一| 夜夜嗨绯色| 岛国视频免费在线观看| 超碰到97情色| 色五月综合| JuliaAnn丝袜熟女系列| 婷婷精品| 一二三四视频中文字幕在线看| 亚洲性综合9| 女人天堂av在线播放| 亚洲天堂另类小说男人| 国内毛片热久久思思热| 欧亚日韩三区| 国产精品青草综合久久| 一区二区三区男人的天堂| 超碰精品在线| 欧美性爱日韩高清| 老鸭窝日丰县女人| 亚洲天堂,男人| 又粗又长又大国产不卡| 成人久久久精品| 五月丁香激情综合网| 亚洲色婷婷综合久久一区二区三区| 久久综合激情| 国产福利视频精品视频| 97亚洲国产| 91N欧美| 国产传媒日韩| 精品性爱久久视频| 91在线|亚| 岛国激情视频在线观看| 亚洲熟久久| 日韩性爱视频免费在线 | 国产精品网站免费| 色色五月丁香| 曰韩精品视频一区二区| 国产精品熟女一区二区三区| 久偷拍欧美日韩三区| 久久婷色| 狼狼色丁香久久婷婷综合五月| 97伦综合| 日韩一区二区熟女| 色婷婷综合网| 亚洲91在线播放影院| 国产欧美另类久久久精品课程| 亚欧中文字幕在线视频| 亚洲av在线免费观看| 老子午夜伦不卡影院| 五十路熟女在线不卡观看一区二区| 91青视频| 亚洲午夜AV| 在线岛| 84YTCOM性无码| 亚洲精品黄码久久久久| 男人的天堂久久狠| 韩国国产欧美情侣视频在线| 久插综合| 青青草精品| 色五月综合网| 欧美性爱伊人| 亚洲av综合色| 一级性爱视频免费在线| 在线亚洲欧美| 97欧美色| 成人久久无码www| 日韩欧美aⅴ综合网站发布| 91国模| 国产日韩欧美中文在线播放| 九九热只有精品| 91伊人影视综合| 久9热| 我爱大香蕉| 无码WWW免费视频网站| 操逼视频国产无套| 成人免费性爱视视| 亚洲天堂五月天国产| 午夜精品久久久久久久久久久久久 | 中文字幕视频在线观看一区二区| 婷婷五月天影院| 天天天堂影视日韩亚洲91| 天天看高清麻豆| 91成人社区| 欧洲精品欧洲精品| 久久久久成人网| 女生久久网| 国产精品白丝| 高潮的A片激情扒开一区| 级做a爱无码性色永久免费| 日韩高清黄片| 99久久久er直播网址| 国产av美女被艹的乱叫| 日韩欧美视频青青| 超碰97玖玖爱| 久热精品在线| 翔田千里爆乳巨臀无码| 欧美aaaaaaa| 丝袜熟女一区二区三区| 亚洲综合色男人网| 夜夜福利| 久一区久久蜜桃| 日本性感人妻91| 欧美日本一区二区a人| 人人操人人狠狠操| 黑丝91视频| 麻豆 亚洲 97| 欧美天天干| 国产精品无码久久久久2025| 久久激情网| 精品一区96| 98超碰日本| 天天噜| 欧美成人四级在线播放| 嗯啊不要在线| 欧美精品,四区。五区| 婷婷色香伊人| 日韩欧美一级特黄大片| 东北女人av| 爱丝福利| 午夜超爽| 最新AVzaixian| 天天激色| 国产欧美在线观看免费观看| 中出91| 91在线/欧洲| 国产一级高清免费观看| 97综合在线| 97 九色| 91天天| 国产超碰人人操| 精品无码少妇| 日韩黄色一区二区三区| 青青草日本中文字幕| 亚洲高清欧美总合| 91动漫操逼视频| 日日夜夜青青草母狗| 东京热综合久久一区二区| 国产精品久久久无码AV网站| 精品十三区| 欧美色图 色综合图| 亚洲制服欧美另类内射| 99热大香蕉伊在线| 中文字幕123| 欧美激情久| 日韩精品在线放| 极品五月天噜噜| 欧美97色| 欧美亚洲国产自久久| 91九色蝌蚪在线观看| 欧美熟妇乱码在线一区| 久久久久九九九| 色情综合网| 丝袜加勒比| 久久艹逼视频| 久草色在线观看| AV无码久久久精品| 大香蕉手机在线| 人妻99p| 亚州色阁| 天天爽人人综合免费7799| 欧美日日人人天天| 亚洲中文字幕网| 欧美综合天堂| 啊…啊…操我用力操我 | 亚洲成人免费电影| 久久精品超碰| 97 亚洲 日韩 欧美 在线| 亚洲色婷婷久久久综合日本| 国产欧美一区二区| 99在线免费公开视频| 亚码人妻| 亚欧国产无码精品在线| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 日韩超碰精品综合| 3d成人精品一区二区| 国产人妻精品一区二区三区秋霞| 澳门特级毛片免费观看| 1240青青草一区二区三区视频天爱| 91无码中出人妻视频| 亚洲欧美人妻| 亚洲美女 晚间男人天堂| 精品人妻av在线播放| 玖日综合网| 3571色综合一区二区二区| 在线a亚洲视频播放在线| 亚洲精品天天影视综合网| 国产精品久久久久久久黄无码 | 日本肏逼视频在线观看| 丰满人妻-区二区三区| 日韩一区二区熟女| 亚洲制服欧美另类内射| 亚洲97在线观看| 久干网| 大香蕉九九| 欧美v亚洲v综合v国产v妖精| 好爽要喷了| 偷拍 精品 另类 四区| 狠狠操官网| 综合亚洲网| 99热在线不卡| 天天干天天拍| 免费精品中文字幕| 懂色Av| 十八禁电影伊人网| 99热在线不卡| 桃色五月天| 中文字幕日韩人妻视频一区二区三区| 久久久91| 色偷综合| 色五月第四色| oumeisetu综合| 91久久精品中文字幕| 97操| 久久久青青草| 一区二区亚州激情久婷婷欧美| oumeisetu综合| 艹少妇网站| 欧美真人抽搐一进一出gif | 天天干2区3区| 曰韩精品九九无码| 久久久久国产一区二| 襙一襙| 男人的天堂久久久| 久久成人东京热人妻| 久久99草| 中国黑人三级片网站上区| 黑丝内射一区二区三区| 99re在线观看| 国产精品视频精品一二| 欧美麻豆成人同性GⅤ在线| 黄视频免费| 免费观看日本操逼视频| 亚洲人妻五月丁香婷婷| www.人人摸在线视频| 97干综合网| 歐美性天天| 操人妻逼91| 97欧美精品综合| 啊啊啊啊啊啊啊国| 婷婷国产精品九区| 2017av无码免费无线播| 国产一区二区视频在线播放| 欧美线天码中字| 超碰久超碰久| 操迟操逼在巾线Fre看| 婷婷五月av| 国产做?爰片久久毛片?片美国| 九九久久一区二区伦理| 无码逼| 国产操逼视频在线观看| 福利社区午夜一区二区| 日韩中文字幕人妻视频| 秋霞无码av鲁丝片一区| 日本一区二区成人在线| 日韩激情中文字幕有码| 国产福利精品最新在线 | 欧美熟妇精品黑人巨大一二三区| 超碰97色色| 久久精品夜色国产亚洲AV| 日影院久久婷婷夜夜网| 超碰社区97| 大香蕉99999| 亚洲日韩人妻中文字幕一区| 亚洲精品国产无码高清| aⅴ日韩成人电影av在线免费看av大全| 999国产精品999| 色婷婷成人| 大香蕉伊人亚洲| 夜夜嗨绯色| 国产自偷| 日韩欧无码一区二区三区免费不卡| 欧美高清无码免费视频高清版| 国产久久成人| 五月婷丁香| 免费人人搞97| 日日骚av| 思思视频免费看网站| 狠狠色噜噜狠狠狠狠狠色综合久久| 人人透人人操| 玖玖爱综合| 天天干夜夜肏| 亚洲国产成人精品女人久久久| ,成人免费啪啪视频| 成人三级片无码| 亚洲 中文 女同| 欧美日韩亚洲电影| 大香蕉欧美| 国产精品无码av在线| 99色色| B049AV在线播放| 丝袜美腿av女优在线| 国产成人欧美一区二区三区的国产| 91婷婷| 极品久久久久久久久久久久久久| 精品无码少妇| 精品国产人成在线| 日韩欧美麻豆大片| 超碰97综合网| 国产久久成人| 内射中出日韩在线观看视频| 亚洲精品97p| 亚洲国产av中文字幕久久| 色五月婷婷五月天| 任我爽在线视频免费观看| 黄片www视频免费| 十八禁视频网站| 天天摸夜夜操视频| 日韩啊V| 1024香蕉视频| 蜜桃臀一区二区三区久久| 欧美一区二区三区互相| 91在线页| 超碰97综合| 亚洲国产高清福利视频| 美女AV一区二区| 亚欧免费观看视频| 天天看天天综合成人网| 97超碰超| 99热综合| 资源新线在线天堂| 一区二区娱乐网站| 五月天九九日国产精品一区二区三区| 人妻一区视频| 无码男人天堂| 精品成人亚洲午夜电影| 天天日天天操VV| 人妻一区二区三区视频| 欧美激情超碰777| 日本人妻最新在线中| 欧美日韩色图片| 97色亚洲| 北京专精特新企业招聘信息| 国产性爱强奸乱伦大全| 丰满少妇人妻久久久久久| 黄页| http://qxhbdz.com| 加勒比综合| 久久久啊啊| 无码一区免费在线不卡| 少妇天堂网络| 国产精品熟女九色九色蜜臀| 长久操视频| 国产欧美亚洲精品a第2页| 97在线视频观看免费| AV九九| 亚洲国产精品久久AV| 内射中出日韩在线观看视频| 91伊人久| 亚洲一区制服诱惑| 操碰97| 99婷婷一区二区| 高潮嗯啊性感美女久久久| 噜噜噜在线视频| 国产成人精品一区| 丁香六月婷婷久久综合| 国产精品内射婷婷一级二| 国产熟妇一区二区| 久精品无码av一区二免费国产在线观看| 亚洲天堂一二| www老逼91| 国产精品无码av嫩草| 四虎免费在线播放| 天天插天天舔舔天天干| 宅男影院久久久,99| 色哟哟av| 抽查国产福利主播| 99久久精品国产高潮| 不卡在线观看视频| 极品久久久久久久久久久久久久| 国产AV高清AV无码| 狠狠操,使劲操| 熟妇高潮二区三区| 久久精品视频久久久| 一牛影视成人片免费| 久久人妻熟女一区二区| 色香在线| 爽爽淫人网| 久久国产免费激情视频| juliaann欧美丝袜办公室| 亚洲综合小视频小说在线观看| 偷窥自拍A片| 98人妻精品一区二区色欲| 婷婷久久久精品| 天天爽夜夜欢视| 曰韩无码777| 欧美日韩午夜精品一区二区三区| 天天操天天干美女网址导航| 久操在97| 亚洲AV免费在线观看| 免费的黄片wwwwww| 亚洲中文字幕在现观看| 精品中文日韩字幕视频| 欧美日韩国产中文精品字幕自在自线,| 国产最火爆久久国产网站网站| 精品国产乱码久久久A| 99国产精品久久久在线播放| 丁香六月激情综合| 国产毛片在线| 日韩黄片影院| 粉嫩AV一区二区夜夜| 九七毛片九九毛片| 天堂蜜桃无码视频一区二区| 岛国精品视频在线观看| A级毛片在线看免费| 啊啊啊啊啊啊啊啊视频| 精品白丝一区| 五月开心久久AV官网| 久久伊人在线五区| 男人的天堂亚洲| 国产69精品久久久久99尤物| 国产精品分类在线观看| 人人澡人人干| 超碰吊日色| A一级色女| 91超碰碰在线| 神马久久网| 97香蕉碰碰人妻国产欧美| 18禁免费视频| 一级黄色视频网| 欧美爱三级日韩久久| A级在线视频| 妇女一区二区三区| 97干在线视频| 中文字幕AV中出| 男人的天堂视频精品乱在线| 51一区二区三区| 超碰在线综合97| 久久成人午夜狠狠| 玖玖爱伊人玖玖爱| 欧美激情精品久久久| 午夜九九| 色呦呦、国产精品| 人人摸人人干| 91 刺激在线| 伊人久久婷婷| 丁香五月天社区| 久久黄黄| 台欧久久精品视频| 一区二区三区男女操逼黄色小电影| av天天在线观看| 亚洲限制级在线| 精品福利视频| 日韩 成人 有码| 97色涩| 久久久91福利姬| 超碰偷拍| 黄骗免费网站| 日本中文字幕不卡视频| 国产黄片精品在线| jizzjizz欧美| 色情五月婷婷| 人妻久久久久久久久久久久久久久| 97在线国产精品| 大胆91| 欧美三级免费伊人| 日韩操呦呦影院在线观看| 嗯,啊。舔我逼| 91亚洲最新在线| 国内外内射高清视频| 国产一区二区在线播放量| 草草影院最新网址| 久久精彩免费视频| 97操97色| 国产蜜臀在线| …亚洲黄色厕厕女女在线播…| 日本爽爽爽爽爽爽免费视频| 午夜一区二区三区国产| 97av在线视频| 九九aV| 欧美色偷拍 | 无人区高清电影免费观看一区二区三 www.qmcai2.com | a级免费在线观看| 日本操逼视频不卡直接放| 欧美另类综合久久| 97人人干| 亚洲欧洲无码一区夜| 久久久精选| 亚洲激情在线观看一区| 男人的天堂一区三区| 91丝袜美腿网站| 99re6国产精品99re| 操国产高清| 搡老女人老妇女AAA一VU麻豆| 五月天激情小说网| 欧美久久草熟女| 精品十八在线观看| 精品九九国产无码| 五月婷婷激情网| 久久久久久久六六 | 精品一区二区成人| 九九精品美女高溯喷水| 欧美日韩美女精品久草一区二区三区| 久久精品国产精品一区 | 自拍视频大全亚洲专媒视频/一区二区三区 | 伊人少妇久久久| 91精品人妻偷情| 久久HD| 欧美亚州色的图| 神马久久午夜| 伊人五月天激情| 久草精品热视| 美女网站91| 在线国产探花| 国产视频第2页| 青娱乐老司机视频| 日本欧美成人片AAAA| 超碰伊人在线| 亚洲精品乱码线路中文字幕| 四月丁香婷婷| 欧美激情内射| 噜噜吧,噜噜色,噜噜| 日韩少妇在线视频| 日韩精品国产一区二区| 久久久成人国产精品无码| 9久精品视频在线观看| 爽极品影院| 亚洲欧洲精品成人| 沈阳熟女高潮对白视频| 91xingse| 五月天亚洲色图| 五月激情视频| 中文字幕黄色一起草| 国产三级中文有码在线视频| 大乔未久88一区| 人人人人插| 狠狠躁天天躁日日躁| 人妻偷拍一区二区三区| 高树玛利亚无码流出| 东北少妇高潮zzzz| 无码欧美有限公司| 被操高清无码视频| 久久久不能久久久久| 思思热在线视频在线| 日韩欧美成人大香蕉| 亚洲精品九九九| 少妇免费视频| 囯产精品久久久久久久久久梁医生 | 亚洲操逼网| 日韩久射综合| 国产精品电影| 97天堂| 欧美精品成人亚洲| 亚洲无码成人精品| 乱码熟妇人妻久久久| 午夜福利1区2区3区| 亚洲色图欧美另类在线| 国产精品一区二区三区,亚洲综合| 操淫穴亚洲五月丁香 | 精品少妇一区二区三区| 五月综合激情| 五十路熟女人妻一区二区三区四区五| 1024亚洲中文字幕久在线看片你懂的| 97亚洲精品| 欧美日韩婷婷中文| 日本www操操操| 超碰在线91| 91精品大奶人妻| 操碰97| 日韩淫色网| 99综合| 国产精品视频自拍在线| 97精品久久久久中文字幕| 色色五月丁香| 久九九九九九九九热| 麻豆人妻精品一区二区| 黄色片一区二区三区四区五区 | 亚洲经典啪啪| 人妻夜爽夜夜爽| 啊好大好舒服| 国产人妻天天干精品| 91亚洲电影| 五月开心久久AV官网| 女人爽到高潮潮喷18禁网站| 精品无码欧美三级| 久久综合久久综合人久久夜精品| 国产综合网站在线播放| aV中亚| 天天摸天天舔天天操| 日韩97超碰中文字幕| 亚洲国产精品9999在线观看| 久艹日日日| 少妇高潮喷水无套久久久久久| 五月综合久久| 色呦呦呦在线观看视频| 丝袜AV一区二区三区| 伦在线97| 玖玖97综合 | 在线天堂999| 久久精品亚洲成a人天堂| 国产91影院| 精品二区三四区五电影 | 国产欧美一区激情交| 日韩精品在线放| 男人天堂2030| 97干综合网| 乱码熟妇人妻久久久| 亚洲AV无码黄色强奸| 丁香五六月啪啪| 欧美 亚洲| 日日干夜夜欢| 天美传媒在线一区| 中文字幕老熟妇黄色视频| 日本黄 R色 成 人网站| 思思热国产在线视频| 伊人天天久久动态图| 日韩欧美女求操每天更新| 久久久中文版| 欧美老妇女内射网址| 色妺妺在线视频| 影音先锋国产精品| 亚洲成人一区二区精品| 黑人精品XXX一区一二区| 亚洲91网| 人妻夜夜爽天天爽三区麻豆AV网站| 亚洲人人夜夜澡人人爽| 亚洲日韩欧美一区二区| 红桃视频高潮| 日产国产精品中文久久婷婷| 天堂av2019| 九色PORNY9l原创自拍| 99爱爱| 日韩人妻一区二区精品| 久久AV无码网址| 欧美日韩国产色图在线| 亚欧无码在线| av日韩手机在线影视| 东北丰满熟女国产一区| 久久久久亚洲?V片无码V| 波多野结衣一级视频| 五月丁香六月综合缴清无码| 国产亚洲精品一区二区三区| 欧美国产精品久久九九| 国产福利精品98视频| 亚洲乱码精品一区二区| 少妇被c 黄 免费观看| 天天日天天操天天射河南省| 欧洲久久一二线| 亚洲无码精品AV久久久| 久久久久久一日韩字幕无码| 日本成人免费一区二区三区| 午夜无遮挡男女啪啪视频| a亚洲欧美色欲| 偷拍三区| 欧洲一级性爱视频在线观看| AV污污污污| 大香网伊人久久综合| 加勒比在线视频| 伊人影院在线理论播放| 欧美日韩精品久久| #NAME?| 99热欧美| 亚洲日韩av专区无码| 日韩操p| 亚洲成人性爱在线观看| 亚洲精品a人片在线观看视| 六月激情网| 日韩AV色图| 色欲人妻一区二区在线| 欧美在线|亚洲| 熟妇色99| 黄视频免费| 91精品啪在线观看国产城中村| 久久五十路熟女人妻| 日韩亚洲Av人人夜夜澡人人爽| 丁香色色网| 丝袜喷水在线| 夜夜精品视频一区二区| 欧姜老司机| 亚洲一二三四区| 国产精品ⅴ无码大片在线看.| 亚洲欧美中文一区二区三| 中国女人内射6XXXXX| 五月大香蕉| 亚洲综合在线高清| 成人色女网| 日本黄色XXX| 99av| 黄色网址在线免费观看| 99热亚洲天堂| 超碰97首页| 欧美日韩1234| 天天躁日日躁AAAAXXXX国产| 五月综合视频| 狠狠2050在线观看| 超碰久超碰久| av午夜影院在线播放| 草b在线 | 亚洲中文字幕在现观看| 操美女高潮抽搐白浆| 欧美少妇性乱| 91老司机视频| 在线无码操| 亚洲精品天天影视综合网 | 精品国产91内射久久| 精品超碰中文在线| 国产精品高朝久久久久久久| 欧美色偷偷| www超碰| 夜夜精品视频一区二区| 久久 国产 无码| 91N欧美| rion磁力链接| 丝袜制服字幕在线| 欧美日韩中文字幕不卡| 日本色色色视频| 中文字幕视频2区| 97精| 超碰三级秋霞| 可乐操亚洲蜜911| 亚洲一区二区性爱电影| 日本天堂网| 97欧美日韩综合| 丁香五月婷婷基地| 中文字幕乱碼在线| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 超碰导航97| 婷婷丁香五月天亚洲天堂网| 丰满精品人妻少妇久久字幕| 夜夜爽夜夜爽| 日韩免费人妻色情网站| 91熟女丨老女人| 日本日皮视频逼| 熟妇一区,二区,三区。| 国产树林里野战在线看| 野狼激情网| 午夜毛片亚洲精品片国产久久久| 家庭乱伦国产| 久久天天躁日日躁狠狠躁 | 26uuu偷拍亚洲欧洲综合| 亚洲网自拍| 欧亚性爱在线视频| 9热9热综合网| 最近2018中文字幕在线高清第一页| 熟妇视频一区二区三区在线观看| 亚洲男人的天堂va亚洲男人社| 五月婷婷丁香六月| 久久久一二三四区| 人人做人人妻人人夜视频| 97伦综合| 欧美一级久久久久久久大片动画| 加勒比人妻综合| 黄色视频特级毛片| 亚州五月| 色五月综合| 久久久久97| 日韩精品人妻中文字幕久久久| 日韩成人精品| 中文一区在线日| 日韩另类| 2017天天插| 日韩内射视频| 3d成人精品一区二区| 天欧美在线| 麻豆久久久一区二区| 一级片视频啪啪| 午夜精品久久久久久久99热影院| 国产高清MV操逼视频| AV中文字幕三四五| 这里只有精品视频| 国产在线观看91精品一区| 综合天天。| 91丨九色丨43老版熟女| 亚洲欧美色图| 亚洲 综合 第一页| 亚洲精品亚洲人成人网| 伊人国产成人av网站| 青青操视频在线| 中文字幕一区二区三区视频播放| 粉嫩av在线| 天天天操天天天爱| 亚洲激情av| 狠狠色噜噜狠狠狠狠2018| nuu12国产麻豆精品| 激情五月婷婷| 国产黄色剧情影片麻豆免费播放| 十八禁一区二区无码观看| 亚州伊人色综台| 最新日日夜夜天天干干| 一本一道久久综合久久| 中文有码第五页| 操B在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 国产高清无码一区三区二区| 91久久久久| 日韩精品熟妇| AV 少妇 人妻 偷拍| 岛国福利在线精品播放| 夜夜久久久| 欧美青青视频| 99热色这里只有精品| 日韩精品人妻一| 东北少妇高潮zzzz| 正宗无毛一线天嫩逼| 国产精品小视频一区二区三区| 综合欧美日本三级| 国产操逼视频在线观看| 91色欧美| AV在线播放网址| 亚洲揄拍网| 破苞ⅩXXX性无码动漫无码| 亚洲激情在线观看一区| 欧美人妻少妇| 夜夜嗨一区| 91精品婷婷国产综合久久竹菊| 四虎永久在线精品免费网址| 伊人久久婷婷| 韩国午夜理伦三级好看| 人人操我人人干| 新97国产超碰| 啊啊啊啊好疼视频| 97超级久久强资源| 国产精品无码在线| 亚洲**2021在线观看| 色欲久久99国产精品久久久久久| 精久久久| 天天干2区3区| 亚洲丝袜色| 五月婷婷六月丁香| 国产乱伦一二三区| 脫衣舞一区二区三区| 午夜国产乱伦视频| 国内精品嫩模A∨私拍小视频| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 人妻人人澡人人爽人人| 96AV久久久| 国产美脚女优尤物在线观看| 91 刺激在线| 五月天社区| 91操人| 丁香五月色情| 91人妻PORNY九色大屁股| 亚洲欧洲综合视频在线| 韩国黄色片精品久久久| 97任你吞精| 极品色www影院| 色狠狠综合| 久久久爆乳翘臀一线天伦理视频| 国产成人精品日本亚洲语言| 国产人妻天天干精品| 国产精品老师| 一区二区娱乐网站| www.色综合| 亚洲……91| 91网18|