作者richliu (皮皮)
看板Soft_Job
標題Re: [心得] 微軟的driver架構 = BullShit
時間Fri Aug 28 12:04:13 2009
※ 引述《darthv (閑談莫論國事)》之銘言:
: → iincho:Windows source code請找WRK.NT4也有流出版..XD 08/28 10:33
: → iincho:K一輪看下來很多不懂的東西會豁然開朗... 08/28 10:33
: → iincho:不過新的OS大部分的RD都是用WinDBG加上組語硬挖出來.... 08/28 10:34
: → iincho:我個人是覺得Mini driver是正確的方向,不知道Linux為什麼 08/28 10:35
: → iincho:這方面還是很原始,結果大部分的RD都在做重複的工作..zzz 08/28 10:35
Just For Fun.
一堆人在拿 Linux 惡搞.
Linux driver 並不是大部份的 RD 在做重複的工作
其實很多時候只要改底層就好了.
有時候 Linux driver 並沒有處理的這麼好的時候,
大概就是要大改一下, 再怎麼樣都有路可以繞.
拿個最近在做的例子, Linux AHCI 的 driver 是掛在 PCI stack 上.
如果我在 embedded system 上, 這隻 driver 就要改一下,
麻煩一點就去修原來的 ahci.c , 懶一點就 copy ahci.c myahci.c
再改一下就可以了.
Linux driver 的 RD 應該不會做重複的工作, 出問題的時候都會
追到上層去. 大概瞭解原理. 有些東西也會去抄其他的 driver .
很多 Linux 的 RD 應該做的是整合, 像是系統廠, 雖然都是用 Open source
但是還是常常在造輪子, 很多系統廠連自己的輪子都造不好.
這些 RD 才是做重複的工作....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.22.92
1F:推 darthv:本來都是在套範本填function的人,給他一張空白畫紙也是 08/28 15:30
2F:→ darthv:畫不出來的 08/28 15:30
3F:→ darthv:有人拿linux架出google, 做grid, 開發android 08/28 15:31
4F:→ darthv:有人嫌沒範本可套,呵 08/28 15:31
5F:→ iincho:光追這些東西就是額外的成本不是? 平台要推當然要搞無腦化 08/28 16:14
6F:→ iincho:我的看法是高手的事留給高手, 混飯吃的就給混飯吃的... 08/28 16:14
重點在於, 誰要賺錢
平台都給 M$ 吃去了, 當然是 M$ 賺...
追 code 又不用高手, 找幾個混飯吃的就可以整一些東西出來.
但是想要整出 Andoid 這樣還是要功夫的.
7F:→ iincho:常用的功能統一給做OS的包掉不見得是壞事,這樣HIV可以專心 08/28 16:16
8F:→ iincho:搞其他東西,像是多媒體的部分Windows優勢就很明顯... 08/28 16:16
9F:→ iincho:Linux有沒有,有,但是和Windows是不是同一等級的東西? 08/28 16:17
10F:→ iincho:多頭馬車的問題在Linux的底層部分算是還好,上層AP可以說 08/28 16:18
11F:→ iincho:更是一團混亂,光在那邊打patch就消耗掉不少開發能量 08/28 16:19
這就是互補.
像networking, Windows 在這邊根本沒有市場.
NAS storage 應該也是, 目前都是 Linux 的天下. 不管是 Linux or embedded system
我比較簡單的分, 目前是這樣
有 GUI 的, Windows 樂勝, 沒有 GUI 的 Unix* 樂勝
(我不能將 BSD/Solaris 放一邊)
AP 就沒有辦法比較了. 畢竟太大太廣了.
12F:→ iincho:主要的問題應該是embedded system的硬體規格不像PC那樣統一 08/28 16:20
13F:→ iincho:需要大量的客製化,所以才會覺得什麼都自己來就好 08/28 16:21
14F:→ iincho:不過在桌面端的東西我寧可花少一點時間搞這些東西... 08/28 16:21
其實是 Embedded System 有太多 Bug 要用很奇特的的方式去 hacking
要不然幾千萬就放水流了.
※ 編輯: richliu 來自: 140.113.22.92 (08/28 16:25)
15F:推 darthv:有盲點,就算完wince/winmobile那一路的 08/28 17:32
16F:→ darthv:硬體不照微軟的建議你還是得自己改bsp.跟linux一樣的省不了 08/28 17:33
17F:→ iincho:啊我都說不搞embedde system了... 08/28 17:37
18F:→ iincho:搞embeddes sytem用WinCE自找麻煩...zzz 08/28 17:38
19F:→ darthv:pc的話,早就都被微軟綁標了.千篇一律的硬體套千篇一律的 08/28 17:45
20F:→ darthv:windows再加上填空題的driver/ap. 好寫,利潤有限. 08/28 17:45
21F:→ darthv:大部分的利潤讓微軟/INTEL拿去,理所當然.因為人家做比較難 08/28 17:45
22F:→ darthv:的事. 08/28 17:45
23F:→ darthv:所謂的Linux的問題,比較像是自由軟體的特性.套句Unix界的話 08/28 17:46
24F:→ darthv:it is not a bug, it is a feature. 08/28 17:46
25F:→ darthv:Unix界不少初學者難用到掉渣的特性是老手的好用功能 08/28 17:47
26F:→ darthv:不用錢+開放原碼+功能還算強可以讓有心耕耘的人留住利潤 08/28 17:49
27F:→ darthv:當然對於台灣那些賺加工費用的業者來說沒樣板可套很痛苦啦 08/28 17:50
28F:推 darthv:要有mini-driver類似的東西得等高手們達成共識吧 (笑) 08/28 17:52
29F:推 bondalin:科科...看得出來unix為何還不能普及的原因XD 08/28 22:21
30F:→ bondalin: unix-like 08/28 22:21
31F:→ NotOnSale:原PO和以上二位都是高手啊....! 08/28 22:35
32F:推 bondalin:樓上應該是說我樓上兩位喔,小弟是低手,連千篇一律driver 08/28 22:46
33F:→ bondalin:都還在入門... 08/28 22:46
34F:→ darthv:你好像誤會了喔,不是說有人有心故意把linux弄得很難學 08/29 00:21
35F:→ darthv:是說新架構(譬如mini-driver)需要自由軟體工作者去達成共識 08/29 00:22
36F:→ darthv:自由軟體界相當民主,要有大一統的東西需要時間 08/29 00:23
37F:推 meltice:因為*nix認為每個使用者都是高手 08/31 16:18