奇駿/RAV4顫抖 售價19.98萬起的大眾新SUV到來_台北網頁設計

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

動力對比途觀絲綢之路版最強 扭矩爆發最早三台車的馬力均在150馬力左右,不相上下,但是途觀絲綢之路版搭載高功率280TSI發動機,最大扭矩達到了250馬力,而且不到2000轉就可以爆發出最大扭矩,而奇駿和RAV4榮放的2。0L發動機扭矩僅僅200牛米甚至200牛米不到。

大眾途觀是我們非常熟悉的一款SUV車型,這款SUV憑藉精緻的外觀和內飾以及強勁的性能表現贏得了消費者的認可,自2010年上市以來累計銷量迅速突破100萬台,成為國內累計銷量破百萬最快的SUV車型,而且連續5年位居SUV保值率榜首,強大的實力是其暢銷的後盾。

而由新華社主辦的重走絲綢之路活動,車隊需要穿越無垠的戈壁、蒼涼的大漠和艱險的山路等惡劣路況,為此新華社已連續三年選用通過性和可靠性都十分卓越的途觀作為重走絲綢之路的指定用車。

和其它SUV相比,途觀的熱銷靠的是什麼?消費者的眼睛是雪亮的,為什麼消費者從眾多的車型中選擇了途觀呢?德國精湛的机械品質,強勁的動力系統,實用高級的科技配置都是途觀成功的原因。

不沉浸於過去的榮耀,強者從來都不懼向前

百尺竿頭更進一步 途觀推出絲綢之路版

官方指導價:

途觀 2016款 280TSI 自動絲綢之路風尚版 19.98萬

途觀 2016款 280TSI 自動絲綢之路舒適版 22.58萬

搭載馬力扭矩更大的280TSI渦輪增壓發動機,更低的排量更小的油耗,動力仍然強勁,相比較主流的奇駿和RAV4榮放,途觀絲綢之路版競爭力如何?

我們挑選最有代表性的20萬左右車型進行對比:

外觀對比

途觀絲綢之路版精緻與高檔感更好

三款車的尺寸相差不大,但是在外觀設計風格上大相徑庭,RAV4榮放的外觀線條比較複雜,意在營造出更加受年輕人喜歡的動感造型,因此在線條上大刀闊斧地運用,雖然這樣的造型立體感不錯但是外觀不怎麼協調;奇駿的外觀帥氣陽剛,來自概念車的造型以及最新的家族式前臉都很受人喜歡,但是奇駿的外觀精緻感欠缺,並沒有這個價位車型該有的檔次感,這也是日系車的通病。

途觀絲綢之路版的外觀設計精緻感更好,造型和大眾途銳的相似度比較高,飽滿的線條勻稱的比例和精緻的細節設計十分具有高檔車的感覺,在燈腔結構、材質搭配以及造型設計上都更加地具有豪華車般的質感。

內飾對比

途觀質感最佳實用性也不錯

RAV4榮放/奇駿的內飾注重實用性,這裏小編無力吐槽,貌似日系車型在內飾的質感和用料上都不夠好,沒有質感可言。

途觀絲綢之路版的內飾在精緻感上好很多,各種按鈕的觸感手感也更佳,車內的配色和造型設計也更加地講究,,儀錶台上空調出風口就設計了8個,更加能夠調整到合適的風向和角度,多卡槽的設計也使得高速卡停車卡等卡片有安放的地方,

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

許多細節設計都十分貼心。

動力對比

途觀絲綢之路版最強 扭矩爆發最早

三台車的馬力均在150馬力左右,不相上下,但是途觀絲綢之路版搭載高功率280TSI發動機,最大扭矩達到了250馬力,而且不到2000轉就可以爆發出最大扭矩,而奇駿和RAV4榮放的2.0L發動機扭矩僅僅200牛米甚至200牛米不到。因此在加速表現上它們的差異也十分大,奇駿的百公里加速時間需要11.7秒,RAV4榮放也需要12秒左右,而途觀絲綢之路版僅需要10秒,相差將近2秒的加速差距導致它們在主觀加速感受上相差甚遠,途觀絲綢之路版在加速性能上的優勢十分大。

配置對比

配置都非常豐富 途觀實用配置最好

三款車的配置都非常豐富,畢竟這個價位的車型了,但是RAV4榮放和奇駿花哨的配置比較多,實用性配置不夠高;途觀絲綢之路版的配置從消費者日常用車角度出發,配置設計十分合理,實用性非常高。

途觀絲綢之路版是三款車型中唯一採用电子手剎的車型,更加安全實用也更有高級感,而奇駿和RAV4榮放還在使用傳統的手剎和腳剎,真是讓人無力吐槽。而RAV4榮放和奇駿並沒有胎壓監測,這對於一台需要走爛路的SUV來說安全性大打折扣,而在途觀絲綢之路版上這項配置成為標配。途觀絲綢之路版的遠近光燈都是氙氣大燈,而奇駿和RAV4榮放還在使用蠟燭般的“鹵素大燈”,燈光亮度對於夜晚行車的安全性起決定作用,日系車似乎在安全配置上不怎麼願意花錢,而奇駿和RAV4榮放沒有倒車雷達這事小編就懶得提了。

當然RAV4榮放和奇駿都有途觀絲綢之路版沒有配備的一鍵啟動、電動天窗、電動摺疊后視鏡和多功能方向盤等配置,但是這些配置只能算是錦上添花,雖然這些增加檔次的配置比較多,但是小編依然不能接受沒有胎壓監測沒有氙氣燈沒有倒車雷達這些安全性實用性配置的事實。高速發飄車身單薄也就不多說了。

總結:

在看得到的地方,途觀絲綢之路版的外觀十分大氣而且有檔次感,內飾設計精緻實用,強大的動力系統以及優秀的底盤質感也是日系車型所不具備的,而更重要的是在看不到的安全性配置和設計上途觀要比其它兩款日系對手優秀太多,因此途觀絲綢之路版確實十分值得購買,相比較其他兩個對手來說途觀絲綢之路版要優秀划算很多,而且還不止這些,途觀絲綢之路版目前的優惠政策也十分給力。

上市優惠即來,心動無需等待

途觀絲綢之路版目前推出了貸款購車2年0利率,為貸款購車的消費者提供了實實在在福利,而且購車還會贈送5000元保險,這也相當於在保險的購買上省去了一大筆費用。要知道途觀絲綢之路版搭載最新280TSI發動機,可享受到購置稅減半的政策優惠。小編這裏提醒一句,購置稅減半政策將於今年12月31日結束哦,途觀絲綢之路版的性價比這麼高,還在觀望中的各位欲購從速哦~本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

高通 888 SoC 開始,升級 Android 大版號將更容易_潭子電動車

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

今天早上的熱門新聞之一,是很多媒體都被誤以為 Google 與高通宣布,將為未來的 Snapdragon 888 旗艦平台,提供 4 次的 Android 主要平台升級 — 因為雖然圖表上的確是 4 年,但第一個版本指的其實是「預載系統」(跌倒)。是說,儘管說法改為「4+4」年的系統與安全更新的發佈,但大致與以往的 3 次 Android 大版號升級+ 4 年安全更新無異。但這次的宣布其實還是有一定程度的意義存在。繼續閱讀高通 888 SoC 開始,升級 Android 大版號將更容易報導內文。

▲圖片來源:Android Police

高通 888 SoC 開始,升級 Android 大版號將更容易

雖說原本傳出的 4 年更新消息,讓大家開心了一下,以為 Google 真的拚了想透過硬體方面的深度合作來延長系統更新的承諾。但這不代表此次 Google 與高通的宣布就沒有意義。

先前 Google 針對各手機品牌讓 Android 系統更原生的策略,現已在近年來的系統更新效率方面有了很正面的效果 — 至少這次 Sony 就真的為旗下 Xperia 手機提供了超高效率的 Android 11 更新。現在看來,就連硬體方面他們也想讓更新的難度盡可能下降。好處自然就是更多品牌會更願意提供持續的升級支援囉(比讚)。

▲圖片來源:Android Police

已於 Android 8.0 導入能讓 OEM 品牌更容易取得硬體對應支援的 Project Treble 的 Google。這次則是選擇與高通合作,自 Snapdragon 888 SoC 開始,讓 OEM 廠商在支援的期間內將不再需要像以往那樣,還得要與高通再另外談專案合作,才能達成 Android 更新的必要硬體支援。

▲圖片來源:Qualcomm

儘管這並不代表所有搭載 Snapdragon 888 SoC 的旗艦機,未來都能保證至少 3 次的 Android 升級。但對於 OEM 而言,現在如果想為用戶提供持續系統更新的難度與成本基本上又降低了些。也許這意味著資源相對較少的手機品牌,在更新效率與承諾消費者未來更新支援方面,都有更進步或更靈活應用開發資源的可能性。

畢竟現在看來,大廠的 Android 旗艦機更新速度進步了不少。接下來 Android 12 或更新的版本,在這樣的幫助下,是否有機會更貼近 Google Pixel 的步調,將會是值得觀察的重點。

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

本篇圖片 / 引用來源

延伸閱讀:

Apple TV 確認降臨 Chromecast with Google TV 電視棒

Chrome 炎上後 Firefox 立馬提供 Apple M1 支援,微軟 Edge 也宣布將跟上

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

上海交響樂團舉行“2020上海新年音樂會”_潭子電動車

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

  2019年12月31日,丹尼爾·哈丁在上海交響樂團音樂廳指揮“2020上海新年音樂會”。

  當日,“2020上海新年音樂會”在上海交響樂團音樂廳舉行。 新華社記者 任瓏 攝

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

小米有品推出杜克LS5雷射測距儀:支持最大 40m 測距、Type-C快充,配備 OLED 全觸控螢幕,眾籌價約 428 元_台中搬家

台中搬家公司費用怎麼算?

擁有20年純熟搬遷經驗,提供免費估價且流程透明更是5星評價的搬家公司

針對生活中各種需要精準測量需求,使用一台雷射測距儀即可輕鬆協助完成測量工作。然而,目前市面上普遍的雷射測距儀都要約一千多元價位,對於預算有限的小資族來說仍是不小的一筆開銷。近期小米有品最新一期推出的眾籌商品「杜克LS5雷射測距儀」,相較杜克舊款的雷射測距儀升級全觸控 OLED 螢幕、支持 Type-C 快速充電,加上 40公尺測距和數十種實用功能,讓使用上更加便利。

小米有品推出杜克LS5雷射測距儀:支持最大 40m 測距、Type-C快充,配備 OLED 全觸控螢幕,眾籌價約 428 元

對於預算有限的民眾想挑選一款質感好、功能實用的雷射測距儀器,近期小米有品以眾籌方式推出的這款「杜克LS5雷射測距儀」就是不錯的選擇。

杜克LS5雷射測距儀採用全觸控是隱藏螢幕,透過上下左右滑動在螢幕上滑動,經鬆完成各種功能切換工作:

杜克LS5雷射測距儀機身體積相當小巧,僅 12.9mm 的機身厚度和 50g 的整機重量,能輕鬆放入口袋收納。

杜克LS5雷射測距儀能在短短 1 秒鐘完成測量,支持生活中包括直線測量、連續測量、面積測量、體積測量、水平測量等多達 18 種實用的測量功能。

硬體方面,杜克LS5雷射測距儀搭載 ST 微處理器等多國進口零件,藉由精密組裝、精確演算法、程式優化帶來穩定且精準的測量數據。

杜克LS5雷射測距儀的機身外殼採用全鋁合金材質打造,螢幕採用 4H 鋼化玻璃材質兼具高清晰、通透、高靈敏度、抗衝擊的特性,面對日常刮擦也更耐用。

台中搬家遵守搬運三大原則,讓您的家具不再被破壞!

台中搬家公司推薦超過30年經驗,首選台中大展搬家

供電方面,杜克LS5雷射測距儀內建 280mAh 鋰電池、採用 USB Type-C 充電介面,充滿電最多可實現 4,000 次高精細的測量工作。售價部分,杜克LS5雷射測距儀建議售價為人民幣 179 元(約合新台幣 775 元),目前眾籌階段的眾籌價格為人民幣 99 元(約合新台幣 428 元)。

官方宣傳影片:

圖片/消息來源:小米有品

延伸閱讀:
小米有品推出大未高速吹風機,超大風量 3 分鐘快速乾髮、眾籌價約 1,945 元

疑似小米11 真機首次亮相,機身外觀於地鐵被捕獲

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

台中搬家公司費用怎麼算?

擁有20年純熟搬遷經驗,提供免費估價且流程透明更是5星評價的搬家公司

《見字如面4》先導片催淚上線_潭子電動車

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

“我是菲利普,菲利普的眼睛;我是菲利普,菲利普的肝;我是菲利普,菲利普的腎……”日前,令人期待已久的《見字如面》第四季上線了公益先導片,一名西南大學外教菲利普跨國捐獻器官的故事溫暖到了網友,著名音樂人小柯現場朗讀捐贈者父親寫的一封信,也令無數網友感動流淚。

怎麼證明一個人還活着?一封澳大利亞首位在華器官捐獻者菲利普的父親寫給兒子的信《你的離去是父母永難痊癒的傷》,讓觀眾體會到生命延續的感動。喜歡彈吉他唱歌的菲利普,因為深愛中國這片土地,在大學畢業後來到中國,成了重慶西南大學的一名外教。然而就在去年的5月9日,27歲的菲利普卻因病醫治無效,不幸離世。按照菲利普的遺願,他的父母捐獻了他的多個器官,這讓三名中國人的生命得到挽救,兩位中國人的眼睛重獲光明。

菲利普生前極其熱愛音樂,五位受捐者為了實現他的夢想,組建了視頻中的“一個人的樂隊”。這支特殊樂隊的成員來到了《見字如面》的現場,他們身穿印着菲利普名字的隊服,讓人感受到菲利普的生命仍然還在,在五个中國人的身上得到了延續。

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

在這一切發生18個月後,當得知接受兒子捐獻器官挽救的五位移植受者為了完成菲利普的音樂夢想,組成了“一個人的樂隊”,菲利普63歲的父親彼得·漢考克先生按捺不住自己激動的心情,連夜寫了一封家書給陰陽兩隔的愛子。深受感動的音樂人小柯來到《見字如面》現場,替老人家把信讀給天堂里的菲利普和各位觀眾。

父親彼得在信中說:“你走了,留給這個世界最珍貴的禮物是希望,是五個等待已久的生命,因你重獲新生。我和你母親知道你還活着,從未離開,空氣中還有你的氣息,你還在親歷這個精彩的世界。你就是他們,他們和你一個樣,我們失去了一個菲利普,卻獲得了五個菲利普……”

當得知接受菲利普捐獻器官的5位移植受者想組建樂隊,為菲利普圓一場音樂夢時,彼得說:“我和你母親激動了好幾天,看到‘一個人的樂隊’,印着菲利普名字的隊服,我們一家人也要一人一件,想穿上它去給你鼓掌、吶喊。菲兒,你就是我們的王子。”

菲利普已逝,他的生命不僅在五位移植受者身上得到了延續,他身上散發的人間大愛也永遠閃耀着人道主義的光輝,使得越來越多的人關注器官捐獻這一公益行為,更促使更多的人成為了器官捐獻登記者。(記者 祖薇)

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

【原創】Linux中斷子系統(一)-中斷控制器及驅動分析_租車

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

背景

  • Read the fucking source code! –By 魯迅
  • A picture is worth a thousand words. –By 高爾基

說明:

  1. Kernel版本:4.14
  2. ARM64處理器,Contex-A53,雙核
  3. 使用工具:Source Insight 3.5, Visio

1. 概述

從這篇文章開始,來聊一聊中斷子系統。
中斷是處理器用於異步處理外圍設備請求的一種機制,可以說中斷處理是操作系統管理外圍設備的基石,此外系統調度、核間交互等都離不開中斷,它的重要性不言而喻。

來一張概要的分層圖:

  • 硬件層:最下層為硬件連接層,對應的是具體的外設與SoC的物理連接,中斷信號是從外設到中斷控制器,由中斷控制器統一管理,再路由到處理器上;
  • 硬件相關層:這個層包括兩部分代碼,一部分是架構相關的,比如ARM64處理器處理中斷相關,另一部分是中斷控制器的驅動代碼;
  • 通用層:這部分也可以認為是框架層,是硬件無關層,這部分代碼在所有硬件平台上是通用的;
  • 用戶層:這部分也就是中斷的使用者了,主要是各類設備驅動,通過中斷相關接口來進行申請和註冊,最終在外設觸發中斷時,進行相應的回調處理;

中斷子系統系列文章,會包括硬件相關、中斷框架層、上半部與下半部、Softirq、Workqueue等機制的介紹,本文會先介紹硬件相關的原理及驅動,前戲結束,直奔主題。

2. GIC硬件原理

  • ARM公司提供了一個通用的中斷控制器GIC(Generic Interrupt Controller)GIC的版本包括V1 ~ V4,由於本人使用的SoC中的中斷控制器是V2版本,本文將圍繞GIC-V2來展開介紹;

來一張功能版的框圖:

  • GIC-V2從功能上說,除了常用的中斷使能、中斷屏蔽、優先級管理等功能外,還支持安全擴展、虛擬化等;
  • GIC-V2從組成上說,主要分為DistributorCPU Interface兩個模塊,Distributor主要負責中斷源的管理,包括優先級的處理,屏蔽、搶佔等,並將最高優先級的中斷分發給CPU InterfaceCPU Interface主要用於連接處理器,與處理器進行交互;
  • Virtual DistributorVirtual CPU Interface都與虛擬化相關,本文不深入分析;

再來一張細節圖看看DistributorCPU Interface的功能:

  • GIC-V2支持三種類型的中斷:

    1. SGI(software-generated interrupts):軟件產生的中斷,主要用於核間交互,內核中的IPI:inter-processor interrupts就是基於SGI,中斷號ID0 - ID15用於SGI
    2. PPI(Private Peripheral Interrupt):私有外設中斷,每個CPU都有自己的私有中斷,典型的應用有local timer,中斷號ID16 - ID31用於PPI
    3. SPI(Shared Peripheral Interrupt):共享外設中斷,中斷產生后,可以分發到某一個CPU上,中斷號ID32 - ID1019用於SPIID1020 - ID1023保留用於特殊用途;
  • Distributor功能:

    1. 全局開關控制Distributor分發到CPU Interface
    2. 打開或關閉每个中斷;
    3. 設置每个中斷的優先級;
    4. 設置每个中斷將路由的CPU列表;
    5. 設置每個外設中斷的觸發方式:電平觸發、邊緣觸發;
    6. 設置每个中斷的Group:Group0或Group1,其中Group0用於安全中斷,支持FIQ和IRQ,Group1用於非安全中斷,只支持IRQ;
    7. SGI中斷分發到目標CPU上;
    8. 每个中斷的狀態可見;
    9. 提供軟件機制來設置和清除外設中斷的pending狀態;
  • CPU Interface功能:

    1. 使能中斷請求信號到CPU上;
    2. 中斷的確認;
    3. 標識中斷處理的完成;
    4. 為處理器設置中斷優先級掩碼;
    5. 設置處理器的中斷搶佔策略;
    6. 確定處理器的最高優先級pending中斷;

中斷處理的狀態機如下圖:

  • Inactive:無中斷狀態;
  • Pending:硬件或軟件觸發了中斷,但尚未傳遞到目標CPU,在電平觸發模式下,產生中斷的同時保持pending狀態;
  • Active:發生了中斷並將其傳遞給目標CPU,並且目標CPU可以處理該中斷;
  • Active and pending:發生了中斷並將其傳遞給目標CPU,同時發生了相同的中斷並且該中斷正在等待處理;

GIC檢測中斷流程如下:

  1. GIC捕獲中斷信號,中斷信號assert,標記為pending狀態;
  2. Distributor確定好目標CPU后,將中斷信號發送到目標CPU上,同時,對於每個CPU,Distributor會從pending信號中選擇最高優先級中斷髮送至CPU Interface
  3. CPU Interface來決定是否將中斷信號發送至目標CPU;
  4. CPU完成中斷處理后,發送一個完成信號EOI(End of Interrupt)給GIC;

3. GIC驅動分析

3.1 設備信息添加

ARM平台的設備信息,都是通過Device Tree設備樹來添加,設備樹信息放置在arch/arm64/boot/dts/

下圖就是一个中斷控制器的設備樹信息:

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

  • compatible字段:用於與具體的驅動來進行匹配,比如圖片中arm, gic-400,可以根據這個名字去匹配對應的驅動程序;
  • interrupt-cells字段:用於指定編碼一个中斷源所需要的單元個數,這個值為3。比如在外設在設備樹中添加中斷信號時,通常能看到類似interrupts = <0 23 4>;的信息,第一個單元0,表示的是中斷類型(1:PPI,0:SPI),第二個單元23表示的是中斷號,第三個單元4表示的是中斷觸發的類型;
  • reg字段:描述中斷控制器的地址信息以及地址範圍,比如圖片中分別制定了GIC Distributor(GICD)GIC CPU Interface(GICC)的地址信息;
  • interrupt-controller字段:表示該設備是一个中斷控制器,外設可以連接在該中斷控制器上;
  • 關於設備數的各個字段含義,詳細可以參考Documentation/devicetree/bindings下的對應信息;

設備樹的信息,是怎麼添加到系統中的呢?Device Tree最終會編譯成dtb文件,並通過Uboot傳遞給內核,在內核啟動後會將dtb文件解析成device_node結構。關於設備樹的相關知識,本文先不展開,後續再找機會補充。來一張圖,先簡要介紹下關鍵路徑:

  • 設備樹的節點信息,最終會變成device_node結構,在內存中維持一個樹狀結構;
  • 設備與驅動,會根據compatible字段進行匹配;

3.2 驅動流程分析

GIC驅動的執行流程如下圖所示:

  • 首先需要了解一下鏈接腳本vmlinux.lds,腳本中定義了一個__irqchip_of_table段,該段用於存放中斷控制器信息,用於最終來匹配設備;
  • 在GIC驅動程序中,使用IRQCHIP_DECLARE宏來聲明結構信息,包括compatible字段和回調函數,該宏會將這個結構放置到__irqchip_of_table字段中;
  • 在內核啟動初始化中斷的函數中,of_irq_init函數會去查找設備節點信息,該函數的傳入參數就是__irqchip_of_table段,由於IRQCHIP_DECLARE已經將信息填充好了,of_irq_init函數會根據arm,gic-400去查找對應的設備節點,並獲取設備的信息。中斷控制器也存在級聯的情況,of_irq_init函數中也處理了這種情況;
  • or_irq_init函數中,最終會回調IRQCHIP_DECLARE聲明的回調函數,也就是gic_of_init,而這個函數就是GIC驅動的初始化入口函數了;
  • GIC的工作,本質上是由中斷信號來驅動,因此驅動本身的工作就是完成各類信息的初始化,註冊好相應的回調函數,以便能在信號到來之時去執行;
  • set_smp_process_call設置__smp_cross_call函數指向gic_raise_softirq,本質上就是通過軟件來觸發GIC的SGI中斷,用於核間交互;
  • cpuhp_setup_state_nocalls函數,設置好CPU進行熱插拔時GIC的回調函數,以便在CPU熱插拔時做相應處理;
  • set_handle_irq函數的設置很關鍵,它將全局函數指針handle_arch_irq指向了gic_handle_irq,而處理器在進入中斷異常時,會跳轉到handle_arch_irq執行,所以,可以認為它就是中斷處理的入口函數了;
  • 驅動中完成了各類函數的註冊,此外還完成了irq_chip, irq_domain等結構體的初始化,這些結構在下文會進一步分析;
  • 最後,完成GIC硬件模塊的初始化設置,以及電源管理相關的註冊等工作;

3.3 數據結構分析

先來張圖:

  • GIC驅動中,使用struct gic_chip_data結構體來描述GIC控制器的信息,整個驅動都是圍繞着該結構體的初始化,驅動中將函數指針都初始化好,實際的工作是由中斷信號觸發,也就是在中斷來臨的時候去進行回調;
  • struct irq_chip結構,描述的是中斷控制器的底層操作函數集,這些函數集最終完成對控制器硬件的操作;
  • struct irq_domain結構,用於硬件中斷號和Linux IRQ中斷號(virq,虛擬中斷號)之間的映射;

還是上一下具體的數據結構代碼吧,關鍵註釋如下:

struct irq_chip {
	struct device	*parent_device;     //指向父設備
	const char	*name;      //  /proc/interrupts中显示的名字
	unsigned int	(*irq_startup)(struct irq_data *data);  //啟動中斷,如果設置成NULL,則默認為enable
	void		(*irq_shutdown)(struct irq_data *data);     //關閉中斷,如果設置成NULL,則默認為disable
	void		(*irq_enable)(struct irq_data *data);   //中斷使能,如果設置成NULL,則默認為chip->unmask
	void		(*irq_disable)(struct irq_data *data);  //中斷禁止

	void		(*irq_ack)(struct irq_data *data);  //開始新的中斷
	void		(*irq_mask)(struct irq_data *data); //中斷源屏蔽
	void		(*irq_mask_ack)(struct irq_data *data); //應答並屏蔽中斷
	void		(*irq_unmask)(struct irq_data *data);   //解除中斷屏蔽
	void		(*irq_eoi)(struct irq_data *data);  //中斷處理結束后調用

	int		(*irq_set_affinity)(struct irq_data *data, const struct cpumask *dest, bool force); //在SMP中設置CPU親和力
	int		(*irq_retrigger)(struct irq_data *data);    //重新發送中斷到CPU
	int		(*irq_set_type)(struct irq_data *data, unsigned int flow_type); //設置中斷觸發類型
	int		(*irq_set_wake)(struct irq_data *data, unsigned int on);    //使能/禁止電源管理中的喚醒功能

	void		(*irq_bus_lock)(struct irq_data *data); //慢速芯片總線上的鎖
	void		(*irq_bus_sync_unlock)(struct irq_data *data);  //同步釋放慢速總線芯片的鎖

	void		(*irq_cpu_online)(struct irq_data *data);
	void		(*irq_cpu_offline)(struct irq_data *data);

	void		(*irq_suspend)(struct irq_data *data);
	void		(*irq_resume)(struct irq_data *data);
	void		(*irq_pm_shutdown)(struct irq_data *data);

	void		(*irq_calc_mask)(struct irq_data *data);

	void		(*irq_print_chip)(struct irq_data *data, struct seq_file *p);
	int		(*irq_request_resources)(struct irq_data *data);
	void		(*irq_release_resources)(struct irq_data *data);

	void		(*irq_compose_msi_msg)(struct irq_data *data, struct msi_msg *msg);
	void		(*irq_write_msi_msg)(struct irq_data *data, struct msi_msg *msg);

	int		(*irq_get_irqchip_state)(struct irq_data *data, enum irqchip_irq_state which, bool *state);
	int		(*irq_set_irqchip_state)(struct irq_data *data, enum irqchip_irq_state which, bool state);

	int		(*irq_set_vcpu_affinity)(struct irq_data *data, void *vcpu_info);

	void		(*ipi_send_single)(struct irq_data *data, unsigned int cpu);
	void		(*ipi_send_mask)(struct irq_data *data, const struct cpumask *dest);

	unsigned long	flags;
};

struct irq_domain {
	struct list_head link;  //用於添加到全局鏈表irq_domain_list中
	const char *name;   //IRQ domain的名字
	const struct irq_domain_ops *ops;   //IRQ domain映射操作函數集
	void *host_data;    //在GIC驅動中,指向了irq_gic_data
	unsigned int flags; 
	unsigned int mapcount;  //映射中斷的個數

	/* Optional data */
	struct fwnode_handle *fwnode;
	enum irq_domain_bus_token bus_token;
	struct irq_domain_chip_generic *gc;
#ifdef	CONFIG_IRQ_DOMAIN_HIERARCHY
	struct irq_domain *parent;  //支持級聯的話,指向父設備
#endif
#ifdef CONFIG_GENERIC_IRQ_DEBUGFS
	struct dentry		*debugfs_file;
#endif

	/* reverse map data. The linear map gets appended to the irq_domain */
	irq_hw_number_t hwirq_max;  //IRQ domain支持中斷數量的最大值
	unsigned int revmap_direct_max_irq;
	unsigned int revmap_size;   //線性映射的大小
	struct radix_tree_root revmap_tree; //Radix Tree映射的根節點
	unsigned int linear_revmap[];   //線性映射用到的查找表
};

struct irq_domain_ops {
	int (*match)(struct irq_domain *d, struct device_node *node,
		     enum irq_domain_bus_token bus_token);      // 用於中斷控制器設備與IRQ domain的匹配
	int (*select)(struct irq_domain *d, struct irq_fwspec *fwspec,
		      enum irq_domain_bus_token bus_token);
	int (*map)(struct irq_domain *d, unsigned int virq, irq_hw_number_t hw);    //用於硬件中斷號與Linux中斷號的映射
	void (*unmap)(struct irq_domain *d, unsigned int virq);
	int (*xlate)(struct irq_domain *d, struct device_node *node,
		     const u32 *intspec, unsigned int intsize,
		     unsigned long *out_hwirq, unsigned int *out_type);     //通過device_node,解析硬件中斷號和觸發方式

#ifdef	CONFIG_IRQ_DOMAIN_HIERARCHY
	/* extended V2 interfaces to support hierarchy irq_domains */
	int (*alloc)(struct irq_domain *d, unsigned int virq,
		     unsigned int nr_irqs, void *arg);
	void (*free)(struct irq_domain *d, unsigned int virq,
		     unsigned int nr_irqs);
	void (*activate)(struct irq_domain *d, struct irq_data *irq_data);
	void (*deactivate)(struct irq_domain *d, struct irq_data *irq_data);
	int (*translate)(struct irq_domain *d, struct irq_fwspec *fwspec,
			 unsigned long *out_hwirq, unsigned int *out_type);
#endif
};

3.3.1 IRQ domain

IRQ domain用於將硬件的中斷號,轉換成Linux系統中的中斷號(virtual irq, virq),來張圖:

  • 每个中斷控制器都對應一個IRQ Domain;
  • 中斷控制器驅動通過irq_domain_add_*()接口來創建IRQ Domain;
  • IRQ Domain支持三種映射方式:linear map(線性映射),tree map(樹映射),no map(不映射);
    1. linear map:維護固定大小的表,索引是硬件中斷號,如果硬件中斷最大數量固定,並且數值不大,可以選擇線性映射;
    2. tree map:硬件中斷號可能很大,可以選擇樹映射;
    3. no map:硬件中斷號直接就是Linux的中斷號;

三種映射的方式如下圖:

  • 圖中描述了三个中斷控制器,對應到三種不同的映射方式;
  • 各個控制器的硬件中斷號可以一樣,最終在Linux內核中映射的中斷號是唯一的;

4. Arch-speicific代碼分析

  • 中斷也是異常模式的一種,當外設觸發中斷時,處理器會切換到特定的異常模式進行處理,而這部分代碼都是架構相關的;ARM64的代碼位於arch/arm64/kernel/entry.S
  • ARM64處理器有四個異常級別Exception Level:0~3,EL0級對應用戶態程序,EL1級對應操作系統內核態,EL2級對應Hypervisor,EL3級對應Secure Monitor;
  • 異常觸發時,處理器進行切換,並且跳轉到異常向量表開始執行,針對中斷異常,最終會跳轉到irq_handler中;

代碼比較簡單,如下:

/*
 * Interrupt handling.
 */
	.macro	irq_handler
	ldr_l	x1, handle_arch_irq
	mov	x0, sp
	irq_stack_entry
	blr	x1
	irq_stack_exit
	.endm

來張圖:

  • 中斷觸發,處理器去異常向量表找到對應的入口,比如EL0的中斷跳轉到el0_irq處,EL1則跳轉到el1_irq處;
  • 在GIC驅動中,會調用set_handle_irq接口來設置handle_arch_irq的函數指針,讓它指向gic_handle_irq,因此中斷觸發的時候會跳轉到gic_handle_irq處執行;
  • gic_handle_irq函數處理時,分為兩種情況,一種是外設觸發的中斷,硬件中斷號在16 ~ 1020之間,一種是軟件觸發的中斷,用於處理器之間的交互,硬件中斷號在16以內;
  • 外設觸發中斷後,根據irq domain去查找對應的Linux IRQ中斷號,進而得到中斷描述符irq_desc,最終也就能調用到外設的中斷處理函數了;

GIC和Arch相關的介紹就此打住,下一篇文章會接着介紹通用的中斷處理框架,敬請期待。

參考

ARM Generic Interrupt Controller Architecture version 2.0

歡迎關注公眾號,不定期更新Linux內核機制相關文章,謝謝。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

經過了四年,微軟至今依舊提供 Windows 10 免費升級優惠_租車

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

微軟早在 2016 年就宣布將停止 Windows 10 免費升級優惠,官方部落格也有特別發出公告,不過去年底時我們曾發現依舊有效,至今又過了一年的時間,微軟取消這優惠了嗎?事實證明還沒有,最近就有外媒實測一樣成功,意味著如果你目前還在使用 Windows 7,只要是正版序號,那現在還是可以免費升級到 Windows 10。

微軟至今依舊提供 Windows 10 免費升級優惠

過去微軟曾公告免費升級 Windows 10 優惠會在 2016/7/29 結束,但過了 4 年這項優惠還是存在:

根據外媒 Windows Latest 的報導,雖然微軟訂定取消優惠的日期早就過了好幾年,但他們最近實測後發現,只要是擁有正版序號的 Windows 7 作業系統用戶,至今仍然可以免費升級到 Windows 10。

以下是免費升級 Windows 10 的操作步驟:

  1. 首先,電腦安裝的 Windows 7 必須是正版序號。
  2. 進入 Windows 10 下載頁面後,點擊 “立即下載工具”。
  3. 打開下載好的工具後,選擇 “立即升級此電腦”,然後接受相關微軟條款說明。
  4. 記得選擇保留檔案的升級選項,如果是全新安裝,很可能沒辦法獲得免費升級 Windows 10 的資格。
  5. 安裝完成後,電腦連上網路並打開 Windows Update –> 啟用。
  6. 當完成微軟伺服器連接後,應該就會顯示啟用成功。
  7. 如果沒有,也能輸入你的 Windows 7 正版序號來啟用作業系統。

過去是 Windows 7、Windows 8.x 用戶都符合 Windows 10 免費升級優惠,不過這次文中只有提到 Windows 7,因此不太確定 Windows 8.x 還行不行,這部分就讓讀者自行測試看看(如果你也想免費升級 Windows 10)。

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

沒意外這優惠應該會持續存在,畢竟都過這麼久,微軟還是沒關閉,再加上之前也有前微軟團隊成員透露「一年免費升級計畫,超過就必須付費」優惠是行銷手法,微軟早就不靠 Windows 賺錢,只是為了提升裝置升級數。

資料來源:Windows Latest

你為什麼該選「Intel Evo」?全方位筆電認證一文看懂

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

到底要不要附充電頭,小米這回把選擇權交給消費者_租車

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

今年 iPhone 12 系列推出以來最大的爭議點,在於取消了隨附充電器與耳機這兩樣在過去被視為標配的手機隨附配件,雖說一開始輿論頻頻,但後續緊接著有些 Android 手機廠商也陸續有這同樣的想法。小米在昨日發表的小米 11 則是提供兩種選擇,讓消費者在不加價的情況下可依個人情況自由選擇。

到底要不要附充電頭,小米這回把選擇權交給消費者

在 12/26 時雷軍曾於微博宣布,為了響應環保,在新一代小米 11 上將取消隨附充電器,並使包裝更輕薄,希望獲得廣大用戶支持,但消息一出網友們多半持反對意見。在當時雷軍曾表示今時今日每個人都有很多閒置充電器,不僅造成收納的困擾也製造不少電子垃圾,雖說取消隨附充電器這點不容易被理解,但是否能夠有更好的解決方案。

在昨日,小米發表了全球首款搭載高通 S888 處理器、四面曲面螢幕與 1 億像素煮鏡頭的新旗艦機小米 11,最令人關注的點莫過於這款產品將會有兩種版本,一者為不含充電器、充電線的環保包裝,另一者則為隨附 55W GaN 充電器同捆版本,兩者價格一樣,等於消費者能夠自由選擇是否要充電設備。雷軍認為,Apple 在今年 iPhone 12 推出時取消充電器的舉措體現了環保意識與社會責任,但做法太過簡單粗暴,而小米的做法則是將選擇權交還給用戶,讓使用者自己來選擇需不需要充電器。

雖說是否真正環保與否這點對於消費者而言感覺不明顯,但 Apple 的做法似乎並沒有考慮到一般用戶家中是否擁有適配的快充充電器,使得消費者必須另外再添購 Apple 或來自第三方的快充產品,如此一來一往到底是否真正環保見仁見智,但可以肯定的是 Apple 與配件商在這一塊又有其他的新商機。

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

指導價比瑞納更便宜但是更好看的悅納你買不買_租車

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

4L自動擋車型動力就有點弱,尤其是高速提速能力。其中1。4L車型的變速箱為6擋手動和6擋手自一體,1。6L的為6擋手自一體。最低配的車型不管是安全配置還是實用配置都很低,它存在的意義更多的只是為了拉低售價罷了。最推薦的車型當屬於2016款 1。

18日,北京現代的小型車—悅納三廂版正式上市。新車有1.4L和1.6L兩款動力系統,總計共6款車型供消費者選擇,指導價為7.28-10.58萬元。

悅納其實就是瑞納的換代車型,但是在外觀設計方面絕對是顛覆了以往的外觀設計,韓國車總是能在外觀設計方面給大家驚喜。

悅納基本繼承了其概念車的設計理念,前臉採用了現代最新的家族式設計,鍍鉻材質修飾的六邊形多橫幅格柵,看起來視覺效果很不錯。車身尺寸為4380*1728*1460mm,軸距為2600mm。基本維持了瑞納的尺寸。和領動一樣,悅納的車尾造型很漂亮,小巧的擾流板增添了悅納的運動氣息,可以說從外觀上,悅納領先瑞納很多。

內飾同樣進步很大,整體來看要比瑞納領先一個檔次,畢竟不是一個時代的產物。無論是做工還是用料,都有了很大的進步。

由於軸距較大,所以後排乘坐空間也比較寬裕,坐墊長度適中,腿部支撐較好。但是如果後排乘客身高超過了1.8米,頭部空間就有點局促了。畢竟悅納是小型車。

悅納的在日常行駛中轉向手感較輕,指向很准,但是基本什麼路感的回饋。懸架調教屬於舒適類型,

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

車內隔音不錯。不過1.4L自動擋車型動力就有點弱,尤其是高速提速能力。其中1.4L車型的變速箱為6擋手動和6擋手自一體,1.6L的為6擋手自一體。

最低配的車型不管是安全配置還是實用配置都很低,它存在的意義更多的只是為了拉低售價罷了。

最推薦的車型當屬於2016款 1.4L 自動活力版SpORT,指導價為9.08萬,這款車有了鋼琴漆裝飾條、真皮方向盤、皮/織物混搭座椅、擋把等以及專屬的紅黑色運動版內飾等,這都是看得見摸得着的配置,還有一鍵啟動,方便實用。同時還可以選裝天窗。但是不能選裝ESp,絕對是一個差評。

另外就是1.4L 自動炫酷版GLS,指導價為8.78萬,因為它的實用性配置將就可以滿足日常行車,同時它可以選裝無鑰匙啟動/進入系統,剎車輔助、牽引力控制和ESp這些安全配置。也是比較值得推薦的。

不過1.4L自動擋車型的動力不是很好,1.6L雖然配置齊全但是價格太貴了。悅納整體上顏值較高,空間較大,油耗不高,舒適性不錯。但是由於剛上市優惠肯定少,所以不建議現在出手。

現在轎車的優惠幅度都是一個比一個狠的,況且悅納的配置真心不高,你看看左鄰右舍的對手們,一向以摳門著稱的豐田致炫都標配了ESp,神二代pLOLO也有一萬多的優惠,飛度雖然配置也很低但是人家動力甩你兩條街啊!對手們都是那麼優秀而且還那麼努力,悅納你也要努力啊,你不優惠個兩萬,怎麼好意思跟對手們打招呼?本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

Google 語音助理新增「耍廢模式(Do Nothing Mode)」讓你不得不 Chill_租車

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

Google 與其他甜點品牌的聯名也許不算新聞(記得 Android KitKat 巧克力嗎?),但這次他們與吉百利 5 Star 巧克力棒聯名的功能,倒是真的有趣到… 或該說「Chill」到不行。繼續閱讀 Google 語音助理新增「耍廢模式(Do Nothing Mode)」讓你不得不 Chill 報導內文。

▲圖片來源: Cadbury 5 Star India

Google 語音助理新增「耍廢模式(Do Nothing Mode)」讓你不得不 Chill

雖然很可惜的,這個功能目前僅有在可以吃得到 Cadbury 的 5 Star 巧克力棒的區域可以玩到(連歐美都沒有)。但這超「廢」的 Google Assistant 語音助理功能,實在讓人很想要玩玩看!據稱,你只要在啟動 Google 語音助理功能的時候,以「Eat a 5 Star」為指令,即可啟動讓你不得不 Chill 耍廢起來的 Do Nothing 模式。

▲圖片來源: Cadbury 5 Star India

是的,這個直譯為啥都不做的模式,就如同其名,會將 Google Assistant 轉變成一個廢到笑死的無用助理。但與直接不回覆的靜音功能不同,Google 助理依然會回應你的問題,只是不會給你有用的答案。像在官方示範的影片裡,使用者希望撥打電話,結果 Google Assistant 卻直接拒絕(XD);詢問交通狀況、推薦美容院之類的問題,卻會回覆你導向「沒差啦」、「不用啦」、「不需要啦」這類的消極回覆(笑死)。

▲圖片來源: Cadbury 5 Star India

雖然你可能會因此想要噴髒話,不過畢竟是你自己啟動了吃零食的耍廢模式。Google 這波與 Cadbury 的品牌合作,就是希望給你一個最耍廢的點心品嚐時間。更多範例可以看看底下 Android Police 玩到的對話內容。

▲圖片來源:Android Police

既然語音助理沒有聰明到可以判斷你手上拿的是否是該牌的巧克力棒,相信可以玩到的朋友,應該會很樂意在想耍廢的時候就直接啟動此模式。並且不斷試探到底這 AI 語音助理是跟誰學來這麼多奇怪回覆的(Google Assistant:怪我囉?)。

引用來源

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

延伸閱讀:

Telegram 爆精確位置追蹤漏洞,官方似乎還沒打算修正(!?)

小米11 最新的無線麥克風功能怎麼用?官方直接示範了(影片)

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!