這可不是什麼"當哈利碰上莎莉"...
說真的...版主偶爾寫寫 USB 應用程式,也都侷限在於很膚淺的表面應用程式,
在MFC 的平台中,還算是收放自如的 !
但是難免還是會碰上一些看似簡單功能卻是隱藏瓶頸的東西。
尤其啊...像現在PC的處理器這麼強,人家的作業系統平台也不會笨到像以前那種 X86 時代的東西。
所以啊...就是很奇怪的...就是多多少少就是會碰到 Multi-thread 這種東西...
這種Multi-thread 其實早在Windows 98 時代就有了...因為多工作業系統出現。
當然也代表著:他們也可提供同樣的平台讓一些程式發展者,
也可以玩玩屬於自己的多工系統...只不過啊...對那些高階程式設計師來說,
這種Multi-thread 對他們來說:可能駕輕就熟的...但對我們這些半路出家,半弔子的韌體工程師來說。
這種Multi-thread 架構,有時還真的很難一時搞得懂。
尤其是:當這種與周邊介面傳輸有關的USB 碰上Multi-thread ...唉...真是難過啊!
---
當然啊...人家發展Multi-thread的想法:有其特殊優異的應用方法(說真的,我也不知道!)
但是對我們來說:還真的是天書啊...更何況程式跑起來,連要Debug 都抓不到頭緒!
尤其如果還要利用Multi-Thread來發動 USB 的傳輸...
我終於知道了...當初我搞這顆 GT USB Controller 時,我們當初那些軟體工程師,
個個每天都面無表情的...(當然,也不能說成槁木死灰的...)
但的確是,真的不容易啊。這兩天也被這個問題搞得真的想找人..%$#*...
...
這也難怪:當初我自己在推FxxA 時,話說得很好聽...但真的要人家一時搞得懂又要上手...
就好像般石頭去砸自己的腳一樣。...更何況,現在的工程師們,
哪來這麼多時間去搞清楚啊...就像今天有朋友打電話問我有關MP3系統應用平台...
他們說啊...找方案還算可以...但是呢?!卻找不到系統應用工程師...
因為:人家這些公司都把系統都養在大陸了。
聽了不知道要高興呢?!還是要難過?!...
而當您把這些系統問題都往大陸丟時...那還有多少人會真正的留下來看:整個系統的大架構呢?!
簡單的一個例子:當初拿FxxA作無刷馬達Demo 時,真的有人會指出小弟在下我所犯的系統盲點嗎?!
好像找幾個年輕或大陸工程師...只要把東西丟給人家...就萬事OK了嗎?!...
---我只能說:用軟體造無刷馬達PWM真的可以嗎?!......
這是一個很簡單的數學式子而已...兩分鐘就可以知道答案的...
工程師再便宜...應該也都沒有一個簡單的Sense 便宜吧!
大家可以想一想。
----
至於標題這個 : 當USB 碰上Multi-thread...改天有空再整理了吧!
因為:這不只是您要有稍微有點軟體的Sense 外,
最好您對您USB 韌體在USB 傳輸控制方面要有通盤的瞭解...
否則啊...您就天天找這些工程師們Call meeting ...如果,您還把系統工程師養在大陸的話:
那要有專線來作:Conference Call...再不然...您就天天禱告:兩岸直航趕快通吧!
然後,再看看您運氣是不是很好的可以撿到一位北大高材生...可以天天聽您使喚的!?!...
--- 這些都是一些很簡單的邏輯推演啊...您想誰可以給您明確的答案啊?!
win98之前就有OS實做multithreading了,win9x出來時很多UNIX都在笑M$炒冷飯...不過老實說,win32上的multithreading效能其實不怎樣,這是微軟自己承認的!所以後來又搞個I/O Completion Port出來,把程式搞得更難寫~~
回覆刪除我想要推一個平台與概念,其實都不容易的...
回覆刪除因為,您真的不是很清楚別人事如何使用這個平台的?!
或許 M$ 本身在發展這個觀念時,他也覺得還好,所以,才推給一般使用者。
結果,...當然也就會有這種某種程度的適得其反...
---您應該也知道我也講另一件事吧...