資訊產業落後超過一季 這個專案不用做了 有個機制叫退選 XD Work1,2:Modeling Work3也是 角度不同 碼表XD 連題目都搞不清楚XD 要讀後面ref才寫得出來 GDB 七百多頁 用GDB指令去做 1.5x薪水就願意換平台XD 這作業有點變態XD 以前用C 現在用GDB script 用一小時從頭到尾改一行 作業1可能會buffer overflovw 手機怎樣才掛電話? 按下去 彈回來 長按 多按幾個鍵就進攻成模式 最難的東西就是最簡單的 就跟使用者體驗很像 最簡單就是做雲端 因為大家不知道標準在哪 手機只要一召回 產品線就報銷了 所以要能遠端debug 工程模式越精簡越好 軟體不會在最後一關燒進去 iPhone主板跟口香糖寬度一樣XD 燒錄空間限制: 4K 還要夾帶一些東西30k 64k LinuxKernel 3.2M NASA 1960 不要只停在API call 面試愛考 Spinlock / mutex deadlock 四大條件 -- mutual exclusion, hold and wait, no preemption, circular wait 死台大的題目還沒問完就回答定義了 定義我自己google就考了 找出有發生deadlock的code TX RX 是不同的task 會掉字元 會懷疑自己的c 程式有沒有問題XD 誰有把C99看過? 國文老師沒把莊子孟子看過妳會覺得很弱 但工程師為何不看C99? 大部分都可以被起來 我們程式設計師都對別人要求比較高 提示:有的地方一定要用unsigned 有些 要宣告可揮發的 CPU常常在等待周邊 Lab1把CPU的等待安插到適當的地方 UART 快譯通 無敵電腦辭典 他裡面沒有OS!!! 重頭到尾都是一個很大的while loop 沒電的時候系統要彈過去 以前的程式設計師多神奇!!!! 現在兩個io要10hr 真正要做的時候 要考慮的case非常多 只要有個無窮迴圈 就是個系統 那怕他只是重頭到尾 int -> unsign int 就救了公司XD int main {return 65536} POSIX相容的系統來看是? 0-255 0-127 JAVA一個method最大長度多大? method -> bytecode 65536 or 65536 JRuby M star 面試五個小時 第一關結束 化神奇為腐朽 做到被人家看不起 跟公司的工程師聊天 跟他們工程師想工程上的事情 這工程師就發了XD 快快樂樂設計嵌入式即時作業系統 2007年嵌入式的定義是為特定用途的 iPhone已經是電腦了XD 沒有其他OS TX RX順序錯了 資料就錯了 賭博機: 所有io都會透過FPGA加密 printf為什麼難做 要輸入多長的字串? %d %ld處理都很困難 250行 又要realtime回應 kernel改兩百多行 但所有周邊都要改! soft -> hard realtime非常hard 一萬小時練習 不到100的就是神風特攻隊 可決定性: 非常模擬 最難的是底下的腳架 手動寫CONTEXT SWITCH 處理interrupt中 又發生interrupt怎麼半? 真實事件當然是多工的XD 可預測的(predictable) 通常就是在講io 當時連學企管的都來學了 寫drive最酷的就是把一個driver換到另一個device改到會動為止 10年前報價30萬XDDD 後面的作業都很想lab2 做到妳不是台灣人 不知道裡面有軟體 (聯發科) 超可靠 美國需求要15萬 但一年只有1萬四千 RTOS 1~2千 , 不到5000行 難:driver Applications 要全面的資訊 GPOS 可以忽略很多細節 印出hello world 千百個tasks 這字串長度都不同 printf要怎麼很有效率處理 Hello world反組譯 超乎想像地複雜 大部分都要處理字串處理buffer 聽些研討會聽一聽蠻痛苦的 下載app到手機就叫embedded? 成大會計 藉由衝突來提升 Transactional Memory 效能之研究 不要問我有沒有錯 你自己做應用就能知道能不能符合需求 什麼課程都是博士生在上 "運氣好的話" RTOS componert會用IPC來做