精華區beta Tech_Job 關於我們 聯絡資訊
※ 引述《meltice (三億兩千萬大散戶)》之銘言: : 我個人覺得使用WinCE會來的問題比較少 : 反正就是原廠提供BSP然後再修改些driver : 各種不同chipset平台甚至是和Desktop Windows的觀念也有互通的部份 : 可能是微軟在標準化的這部份做的比較完整吧 : 所以CE的經驗感覺上比較可以帶著走 : : embedded Linux及其他如ecos,vxworks等等部份就很自由 : 每家chipset雖然都有提供toolchain跟OS : 但是之間的軟硬體差異卻可能是十萬八千里 : 你熟析A公司chipset不代表你能在短時間內上手B公司的 : embedded Linux能提供的常常只是基本的OS功能 : 其它如GUI, audio/video, ...可能每家公司都有各自的framework : 那些framework可能跟OS一點關係也沒有甚至是另外的DSP core在跑的 : WinCE真的問題比較少嗎? 我不知道閣下怎麼得到這個答案 我想閣下可能沒碰過OS出問題 但是要解決時microsoft的處理方式吧? 其實談到"標準化", 我覺得也蠻諷刺的 微軟只有一種標準 - 自家提的標準 弄embedded system, 只有Win平台經驗比較可以帶著走? 這樣說可能把一些問題談論的太表面了 作這方面的工作, 如果只是建構在使用特定標準API 那麼與Desktop有何不同? embedded system為何而存在? 是產品應用為了WinCE而存在 or WinCE 為了產品應用存在? 而只需要使用Microsoft的toolchain, 忽略了toolchain底下的事務呢? : 簡單的說 : 例如你用MFC寫了個WinCE的AP : 可能幾乎不用什麼改就可以放到不同硬體上面Run : 但是如果你用embedded Linux : 每家公司都提供各自的GUI framework : 你每次都要重新學習重寫一次 : 難怪微軟會說用Linux不見得會比較"便宜" 所以這時自身的價值建構在"微軟的價值" 一旦Win/Microsoft的 bottleneck, 似乎這也是有可能的 而當平台的選擇, 由貪圖"標準flo"之後就只有WinCE? 而Win就真的不用重新學習? 這樣的Win History觀似乎有點短... : 當然Linux上也有些標準的framework例如qt, directFB之類的 : 但是偏偏chipset廠商就是喜歡自己出自己的framework QT/DirectFB並非"標準", 只是選擇之一 廠商的framework, 如果達到你口中所說的"cost" 那未必不是一種選擇, 設計的好壞其次 : : 以軟體工程師的角度而言 : 有標準化是好事 : 經驗可以累積code可以重複剪貼使用 : 以後換工作也比較容易上手 : CE如果有問題也比較容易在MSDN,google找到答案 所以這就是"價值"? 問題是這也只是告訴大家, 你的價值很容易被取代 因為自身價值是建構在特定平台 讓你忽視核心的重要性, 解決特定問題的組合選擇 讓你只要copy paste? : Linux因為軟硬體平台太多根本很難找到對的答案 : 或是很多答案都是for desktop的根本不適用embedded : 原廠可能也僅止於給你toolchain跟OS support : 其它問題就愛理不理認為不是他們的問題 : 而且Linux kernel常常改版 : 有些舊版的機制可能到新版又被改寫或整個被替換掉 : 這時候你又得花精力去學習新的機制 : 或是同樣一件事卻可以有3種不同的機制在handle : 根本搞不清楚到底我現在的kernel是跑哪一套機制 : 或是哪些機制根本embedded Linux不support Windows就沒這問題? Windows CE/Windows Mobile一以貫之? XP 到 CE/Mobile 都有一致的API? Linux就沒辦法mapping desktop到embedded上? Windows就不太改版? 沒有機制上得重複? 為何是把Win CE App Level相比到Linux Kernel Module呢? 你搞不清楚, 會不會是你只想要有MSDN, Google那樣隨手即來 壓根兒都沒想要下去玩泥巴, 下去了解而形成的刻板印象? : 至於核心技術也沒有必要知道吧 : 就算Linux source code給你看光光 : 又有多少台灣的工程師有能力去改kernel source 太過投射自我到大眾了.. 這部份比你想的多, 以我小工讀生所認識的就不少 閱讀/修改kernel source並不難 就像念微積分那般多一點細心 這不是什麼特別困難的事情 : 我只想要板子能work不要當機就好了 : 然後我就要下班了 : 我一點都不想知道kernel到底有什麼bug 是的, 所以當客戶面對WinCE核心得問題, 你的態度是? 我也想早點下班, 板子work不代表work得好, work得穩定, work得有效率 但是不了解一些事情, 怎麼知道root cause, 板子能夠work好? work hard, work smart, 看似很笨的作法, 可能才是解決問題的方法 這是小工讀生我, 從每個強者上看到安身立命不被取代的關鍵 回應一些觀點 Windows Mobile/CE與Desktop呼應, Linux根本完全不同? 近年採用這些feature-rich/full-feature的OS 原因在於protocol stack, 從PPPxxx/TCPIP/Wifi/Bluetooth到USB, 甚至PCI 而Driver而言, Linux有個好處當使用標準bus: ex: USB/PCI/PCMCIA/CF 在平台上driver與desktop並無二致, 而這類driver與AP都必須重新轉移到CE/Mobile 這有什麼好處? 像是USB device, 可以提供較多的硬體支援, 也提供了整合的多樣選擇性 既有硬體支援較不受平台限制 工讀生小弟我 這裡我不是要說Linux有多好, 或是Linux勝 只是CE/Mobile並沒有你說得那麼神, Linux沒你說得如此不堪 embedded system的有趣之處在於多元的組合可能 也是為了特定應用存在的軟硬體的組成 為了這樣的領域, 花時間耕耘可以面對與解決各種可能的"知識" 遠比建構在特定平台, 學習特定好用的"技能"來得重要 程式能夠幻化得型態在於思維與作法 所謂的大事是無數的小事累積而成, 說了這麼多 選擇路的自由還是在每個人自己 best regards champ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.75.222 ※ 編輯: ChampYen 來自: 118.169.75.222 (02/22 12:13)
ChampYen:寫完發現漏寫toolchain的方面的東西..有機會再說吧... 02/22 12:14
anr2:TOOLCHAIN喔~~~ 入門就自己編一各看看 就知道辛苦了 02/22 12:50
ChampYen:是阿...:D 02/22 12:55
NetXiaoBai:心態不錯 02/22 13:31
molester:狂推一下~ champ 自稱小工讀生實在是太貶低自己啦~ 02/22 14:49
meltice:我比較懶吧 我更羨慕有些人幾十年都玩同一套51,PIC 02/22 15:08
meltice:能賺錢一套就夠了 什麼都摸什麼都懂並不會賺比較多 02/22 15:09
meltice:而且我也不想玩泥巴 我只想回家睡覺 02/22 15:09
meltice:至於板子穩不穩project會不會fail公司會不會倒不關我的事 02/22 15:11
ChampYen:so? 那又有什麼可以肯定如此Win問題較少? 02/22 16:24
fxxkboss:M大應該是系統公司的人 最喜歡total solution 02/22 17:47
stlo:就商業角度,管他黑貓白貓,會抓老鼠就是好貓.. 我要的功能如果 02/22 23:59
stlo:這個OS沒有,自己開發要多少成本,換算一下合不合就上了 02/23 00:00
stlo:哪個OS好,這留給資工系跟網路論壇去打嘴砲就好,賺錢重要.. 02/23 00:01
stlo:要簡單的也不用到Linux eCos就上了, 還比較便宜 02/23 00:02
ChampYen:同意 02/23 00:05