999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

關于Linux迎接挑戰的序列對話

2016-12-08 05:19:29中國開源軟件推進聯盟專家委員會
辦公自動化 2016年20期
關鍵詞:嵌入式用戶

陸首群教授與吳峰光博士

關于Linux迎接挑戰的序列對話

中國開源軟件推進聯盟專家委員會

The Sequence Dialogue to Meet the Challenge in Regard to Linux

Linux創始人Linus Torvalds說:Android就是Linux操作系統,今天全球持有Android智能手機的人已超過20億;全球500臺運行速度最快的超級計算機80%采用Linux;在網絡領域,由中國企業(中移動.華為)主導的基于Linux的主流開源項目Open-O最近創新成功,該項目涉及網絡管理和編排領域的創新,它將重新定義SDN的基礎架構,指導全球一些大規模通信網絡的部署和管理;甚至連微軟的云計算平臺今年8月也引入紅帽的Linux(企業版)操作系統。Linux無處不在,但遭遇挑戰。今發表中國開源軟件推進聯盟名譽主席陸首群教授和Linux基金會Linux大規模自動化測試專家吳峰光博士對話:“關于Linux迎接挑戰的序列對話(之一、之二、之三)。

(陸首群教授,中國開源軟件推進聯盟名譽主席,以下簡稱“陸”;吳峰光博士,Linux基金會Linux大規模自動化測試專家,以下簡稱“吳”)

第一篇

陸:今天要跟你討論的問題主要是Linux在發展中遇到了哪些挑戰,我準備給Linux基金會創始人Linus Torvalds寫信,問他有哪些應對措施。在寫信前先跟你討論:

第一個問題:有人說Linux的發展似乎不是從用戶的需求出發的,而是來自開發者的創意。如果長此下去,是否會使Linux發展迷失方向?

第二個問題:Linux開發支持基于X86的主流架構,Linux雖然也支持多架構如arm、mips…等,但其他架構是非主流的,支持力度恐怕要弱,面對PC向移動繼而又向IoT發展形勢,長期以X86作為支持的主流架構是否會阻礙Linux的發展?

第三個問題:最近谷歌開發了用于物聯網(IoT)領域新的操作系統開源的Fuchsia,其特點是小型化和實時性,而作為通用操作系統的Linux(大量用于移動終端也可用于桌面系統)相對來說功能多,結構復雜、體積臃腫,難以做到小型化實時性,但IoT是當前和未來影響極大的大市場,Linux(用于IoT)是否要迎接挑戰呢?

吳:陸主席,您好!

關于您電話中提到的三個問題,我的感覺是第一個問題是虛的,第三個問題是實實在在的,第二個問題很大程度上根源于arm廠商和市場的特質。

1、開發者與用戶需求問題

Linux開發者以用戶需求為依據,大體上可以分為兩類:

●-Linux代碼貢獻者:主要是各個下游廠商的開發者,或者團體/個人用戶,他們是需求的提出者和實現者,是主要推動力量;

●-Linux維護者:站在Linux Kernel長遠發展的角度,審查代碼,改進架構,確保質量,性能和長期可維護性。維護者對于各個廠商基本持兼容并包的態度,其立場一般是中立的從技術角度看問題。這樣的體系基本上是合理的,體現了Linux社區驅動的性質:需求主要來源于社區力量,體現為企業/個人用戶的代碼提交。

2、X86/arm問題

如1.所述,Linus及其維護者團隊努力維持其自主性,鼓勵各廠商的開發者以“獨立貢獻者”(Individual Contributor)的方式貢獻代碼。

Linus對X86支持的好,源自于兩個主要因素:

●-X86是主流硬件,大部分的用戶和開發者都在用X86,自然而然它的功能、性能、bug反饋都有先天優勢。

陸首群,曾任北京電子振興辦公室主任兼北京市政府電子工業辦公室主任;中國長城計算機集團公司董事長,中國吉通通信公司名譽董事長,中國聯通通信公司籌建負責人(之一),首都信息發展股份有限公司名譽董事長;曾任國務院信息辦常務副主任(主持組織金橋、金卡、金關、金稅工程頂層設計,主持籌建中國首批四大互聯網),中國工業經濟聯合會副會長;曾應聘任中國人民銀行、航天工業部、廣電部信息化高級顧問。

●-X86開發較為有序,ARM相對渙散。特別是在Linario組織出現之前。

ARM陣營里的廠商競爭多于合作,導致ARM這個體系結構的維護狀態跟它擁有的開發者數量不相稱。很典型的就是ARM里的子架構非常多,高達74個,每個廠商自搞一套,代碼互相拷貝粘貼,大同而小異。造成維護的噩夢,Linus對此深惡痛絕,屢屢批評和督促ARM開發者向X86開發者學習。Linaro組織的出現就是朝這個方向的一個重要努力。ARM架構的代碼修改量很長時間以來都比X86架構的修改量大得多,代碼絕對數量也更大:ARM,380K代碼行數;X86,260K代碼行數。這說明ARM不缺開發者,可惜各自為戰的成分多了些。除此之外,各Android手機廠商開發的數量龐大的代碼,大部分都沒往上游推。主要是有很強大的產品快速上市的壓力。前后產品之間的代碼復用都很難。相比而言,服務器廠商在產品開發和生態培育上更有節奏感,能長期穩健投入,建設起一個體系。

Linux從1995年發布1.2.0開始就支持多種硬件架構了。這時候的Linux還處于幼兒階段,代碼簡單。這么早就引入多體系架構的支持,意味著Linux從設計上對多架構的支持是完善和具有前瞻性的。如果某些架構表現不好,大概只能從這個體系架構的廠商那里去找原因了。

3、IoT

IoT對于Linux的確是一大挑戰。主要是大小和延遲兩方面的挑戰。一方面是因為Linux的成功發展導致了臃腫和復雜。另一方面是Linux是社區驅動的,來自于嵌入式廠商的驅動力量偏于薄弱。我倡議相關的嵌入式廠商和開發者采取切實的行動,貢獻自己力所能及的力量,讓Linux在小設備上跑得更好。社區的創造源泉來自于包括你我在內的每個參與者。像一個嵌入式系統。我除了想與你探討Linux和Fuchsia的關系外,還請你搜集一些具體數據(我本人也搜集中)。我感到有興趣的是Linux如何應對挑戰,首先想聽你的意見。

吳:陸主席,您好!

關于Linux/Fuchsia的調研如下,還有若干問題我后面繼續補充。Linux在IoT領域面臨兩個基本挑戰:1)內核大小,2)響應延遲。有些設備太小沒法跑Linux;有些設備要求低延遲也沒法用Linux。對于這些設備,為它們專門設計的各種IoTOS會是恰當的選擇。Linux的設計目標是一個通用操作系統,大量技術上的Design Trade Off就會往該目標上傾斜,再加支持上非常多的功能而導致的復雜性,要克服上述兩個挑戰相當不容易。實際上Linux內核的最小大小隨著功能的增多一直在增長,見下圖。

來源是http://events.linuxfoundation.org/sites/events/files/slid es/tiny.pdf。Linux與RTOS的延遲比較,見下圖,

第二篇

陸:最近Google開發新的操作系統Fuchsia,其內核Magenta(基于Little Kernel,LK),與Android(Linux OS)及Linux(Kernel)有什么差別呢?它的應用范圍是IoT、移動終端、桌面系統。我看它主要用于IoT,說要擴展到桌面操作系統領域,似乎有點吹牛。我還是認為,Linux和Fuchsia應用范圍是各司其職。它與Linux操作系統最大的區別是它能做到小型化和實時操作,Linux作為一個通用操作系統,代碼影像尺寸(內存空間)愈來愈大,響應時間愈來愈長(難以實時操作)。時代在變化,由PC(桌面系統)而移動(終端)繼而物聯網(IoT),IoT是“第四次工業革命”的主要領域。Linux的發展是否也會與時俱進?Linux有沒有瘦身化的目標?你電話中告訴我,Linux也有精簡版,恐怕這時尚難做到小型化和實時操作。還有一點,Fuchsia還不至于小到

來源是http://www.embedded.com/electronics-blogs/break-poi nts/4372868/Linux-Wins---Or-Does-It-,

當然Linux也在改進,比如這份技術白皮書:

Linux As a Real-Time Operation System 11/2005

http://www.nxp.com/files/soft_dev_tools/doc/white_pa per/CWLNXRTOSWP.pdf。

對于硬件能力稍強的設備,相應的會對軟件能力和生態有更高的要求和依賴。Linux應當發揮積極的作用,把這些設備支持好。但是持續增長的內核大小說明Linux對它們的支持正在惡化。說明在Linux社區中缺少足夠的力量來監測和優化內核大小。問題可能在于:手機及嵌入式領域的廠家投入了大量的人力來讓Linux在自家的平臺上跑的好,但是一般來說缺乏熱情,把產品代碼整理干凈,變成質量高通用性好的代碼,并把它推入上游Linux的代碼庫。桌面及服務器廠商的態度就是(比如Intel、Red Hat)upstream first,先把代碼貢獻給上游,然后在自家產品中采用或移植(Backport)。兩種態度造成的差別就是:Linux對桌面和服務器支持相當好,然而在嵌入式領域的表現不盡如人意。據我所知Linux下游廠商的開發者數量要比上游維護者大兩個數量級。他們作為最了解需求,掌握最多開發者的大客戶不貢獻代碼,上游維護者想要迎合用戶需求也難。Linus及其維護團隊主要職責還是在于質量把關和確保架構合理。大體上Linux Kernel的發展方向是被各類用戶推著走的。哪一類(廠商)用戶比較給力,Linux在哪方面就發展的好。

第三篇

陸:峰光,請幫忙查一下Fuchsia/Magenta/Little Kernel的內存,以及Android/Linux(Kernel)的內存。我有其它渠道也在查,但我希望獲得你的數據和評說。

吳:陸主席,您好!

Fuchsia/Magenta跑起來需要多少內存還不清楚。我需要編譯看看。

代碼量是知道的:

代碼行數(SLOC)人年項目歷史

Linux v4.814M47351991 Linux 0.018k1.81991 LittleKernel75k202008 Magenta103k27最近公開,估計內部研發有一兩年了

如果把第三方代碼也算進去:LittleKernel506k138

Magenta294k78

kernel size ROM sizeRAM size

LittleKernel15-20 KB(映像文件)

Zephyr8-512 KB(映像文件)10 KB(內存需求量)(由Intel/WindRiver捐獻給Linux Foundation)

Linux(MCU)1 MB2 MB256 KB(XIP)(XIP,eXecution in Place)

Linux(MicroYocto)800 KB<8 MB1.6 MB

Linux(wifirouters)3-5 MB2-8 MB8-64 MB Linux迷你桌面系統:

Damn Small Linux 50 MB16 MB Tiny Core Linux 16 MB46 MB NanoLinux14 MB64 MB Lubuntu744 MB512 MB

以上是各類精簡版Linux的大小。

吳:LittleKernel編譯出來的大小是232K:

232Kbuild-qemu-virt-a15-test/lk.elf

Fuchsia/Magenta編譯出來了,整個內核加用戶態映像文件大小是3 MB左右:

3.5M/c/fuchsia/magenta/build-magenta-pc-x86-64/magenta. elf

2.7M/c/fuchsia/magenta/build-magenta-qemu-arm32/magenta.elf

這是不帶圖形功能的。不過跑不起來,死機了:invalid opcode,halting

CS:0x10 RIP:0x4c EFL:0x2 CR2:0

RAX:0x2 RBX:0x3f RCX:0

RDX:0

RSI:0x8 RDI:0xdRBP:0xffffffff80473be8 RSP:0xffffffff804d0fa0 R8:0xffffffff804d0fc0 R9:0xffffffff804cfe04 R10:0xffffffff804cfe0c R11:0xffffffff804cfe08

R12:0 R13:0 R14:0 R15:0 errc:0

bottom of kernel stack at 0xffffffff804d0ef0:

0xffffffff804d0ef0:0000000d 00000000 00000008 00000000|……………|

0xffffffff804d0f00:80473be8 ffffffff 0000003f 00000000|.;G……?……|

0xffffffff804d0f10:00000000 00000000 00000000 00000000|……………|

0xffffffff804d0f20:00000002 00000000 804d0fc0 ffffffff|………M……|

0xffffffff804d0f30:804cfe04 ffffffff 804cfe0c ffffffff|L……L……|

0xffffffff804d0f40:804cfe08 ffffffff 00000000 00000000|L…………|

0xffffffff804d0f50:00000000 00000000 00000000 00000000|……………|

0xffffffff804d0f60:00000000 00000000 00000006 00000000|……………|

QEMU:Terminated

吳:LittleKernel編譯出來的大小是232K:

232Kbuild-qemu-virt-a15-test/lk.elf

LittlKernel可以跑起來:

wfg/c/fuchsia/lk%qemu-system-arm-machine virt-cpu cortex-a15-m 1-smp 1-kernel build-qemu-virt-a15-test/lk.elf-nographic

welcome to lk/MP

boot args 0x0 0x00x00x0

INIT:cpu 0,calling hook 0x8002e7b5(version)at level 0x3ffff,flags 0x1

version:

arch:ARM

platform:QEMU_VIRT

target:QEMU_VIRT

project:QEMU_VIRT_A15_TEST

buildid:F8Q5R_LOCAL

INIT:cpu 0,calling hook 0x8002fae9(vm_preheap)at level 0x3ffff,flags 0x1

initializing heap

calling constructors

INIT:cpu 0,calling hook 0x8002fb2d(vm)at level 0x50000,flags 0x1

initializing mp

initializing threads

initializing timers

initializing ports

creating bootstrap completion thread

top of bootstrap2()

INIT:cpu 0,calling hook 0x8002c681(pktbuf)at level 0x70000,flags 0x1

pktbuf:creating 256 pktbuf entries of size 1536(total 393216)

INIT:cpu 0,calling hook 0x8002e8a9(virtio)at level 0x70000,flags 0x1

releasing 0 secondary cpus

initializing platform

initializing target

calling apps_init()

starting app inetsrv

starting internet servers

starting app shell

entering main console loop

]help

command list:

page_alloc:page allocator debug commands

heap:heap debug commands

gfx:gfx commands

help:this list

test:test the command processor

history:command history

bio:block io debug commands

vmm:virtual memory manager

Regards,

Fengguang

吳:Fuchsia/Magenta有一點非常重要:它不是一個POSIX兼容系統,如果這是個迷你的IoT專用OS,就不是什么問題,如果它想要在手機、桌面系統發展,則意味從零開始,無處借力。因為不兼容POSIX則難以利用現有的龐大軟件生態,什么都得從頭研發。

作為對比,在嵌入式設備和手機上都能跑的QNX是POSIX兼容系統。

陸:峰光,你質疑Google的Fuchsia的意見,可能會遇到不同意見,如有人說IoT系統很難通用化場景太復雜。我看Fuchsia似乎不是一個通用OS,也不像碎片化的專用IoT OS,如果Google能夠模塊化設計,似乎更有前途。

猜你喜歡
嵌入式用戶
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發平臺
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 午夜久久影院| 国产香蕉97碰碰视频VA碰碰看| 久久亚洲国产一区二区| 久久黄色毛片| 日本不卡视频在线| 色窝窝免费一区二区三区| 国产精品网曝门免费视频| 亚洲国产系列| 欧美、日韩、国产综合一区| 久久成人免费| 亚洲国产日韩视频观看| 无码综合天天久久综合网| 国产精品九九视频| 国产99视频免费精品是看6| 久久精品亚洲专区| av色爱 天堂网| 国产69囗曝护士吞精在线视频| 91午夜福利在线观看精品| 午夜精品区| 在线观看91香蕉国产免费| 国产精品林美惠子在线观看| 亚洲AV无码精品无码久久蜜桃| 再看日本中文字幕在线观看| 欧美激情,国产精品| 国产精品无码一区二区桃花视频| 亚洲美女久久| 国产乱人激情H在线观看| 99久久99这里只有免费的精品| 免费看美女自慰的网站| 国产成人h在线观看网站站| 久久久久夜色精品波多野结衣| 亚洲精品无码AⅤ片青青在线观看| 日韩第九页| 国产国拍精品视频免费看| 亚洲成网777777国产精品| 国产人免费人成免费视频| 亚洲成综合人影院在院播放| 欧美精品影院| 精品视频第一页| 久久一色本道亚洲| 亚洲性色永久网址| 亚洲永久色| 2048国产精品原创综合在线| 欧美精品一区在线看| 一本大道东京热无码av| 九九久久99精品| 国产精品99一区不卡| 国产成人一区在线播放| 亚洲午夜国产片在线观看| 国国产a国产片免费麻豆| 久久先锋资源| 99热这里只有免费国产精品| 久久综合伊人 六十路| 玖玖免费视频在线观看| 国产精品极品美女自在线网站| 久久人人爽人人爽人人片aV东京热| 九九这里只有精品视频| 国产成人乱无码视频| 午夜限制老子影院888| 人妻丰满熟妇av五码区| 天天综合网色| 国产精品福利在线观看无码卡| 中文国产成人精品久久| 日本免费一级视频| 老司机精品一区在线视频| 国产精品网曝门免费视频| 欧美日本中文| 在线va视频| 中文字幕天无码久久精品视频免费| 中文字幕在线看| 欧美五月婷婷| 婷婷午夜影院| 国产不卡网| 国产精品女同一区三区五区| 久久99国产综合精品1| 国内精品视频区在线2021| 日韩最新中文字幕| 国产精品美女免费视频大全| 国产永久在线视频| 欧美亚洲香蕉| 中文字幕 欧美日韩| 一级毛片免费的|