Re: [討論] n萬行的code

看板Soft_Job作者 (ggg)時間7年前 (2016/07/21 14:53), 7年前編輯推噓-18(52312)
留言40則, 22人參與, 最新討論串11/14 (看更多)
這個標題在 tech_j 版又有另一個驚人的題目 強者不需要註解 ========================================================================= : 以高階語言寫的程式是容易被人看得懂的. : ===================================== : : 學過資訊科技的人都清楚高階語言完成的程式是有這個特性的. : 要用高階語言寫出 "self modified code" 或 "dirty code" 其實不容易. 這需要 : 把程式的指令碼當成資料來處理. ======== 資料是能被拿來修改的, 但指令碼通常不准被拿來修改. 指令碼的部分就如同硬體, 做好了就不再更改. 有些資料如起始的設定值也是不改的. 譬如限制試用期的時間 鎖. 高階語言編譯器對這些不同的項目是區分得很清楚. 要用高階語言寫出一段會 自我修正程式碼的程式在先天上就不是很容易. 就今天的IC晶片言, 電子電路的設計也是用軟體寫出來的, 那麼IC晶片能否隨時間 對已完成的電路做自我修正, 把不良的電路自動更新為正確又新的電路? PC 的 BIOS ROM 可以更新就是其中一例. 這是從記憶體做覆蓋的範例, 如果把某些 能被更改的資料放在網路上, 這些資訊可以透過網路被遮蔽或被依對象選擇性使用 或保護, 不同代差的電腦, 在某些功能上就隨時間是否有更新而有所不同了. 更新就是把特定對象的項目換成一個新的狀態, 這個新狀態替換了舊狀態. 更新要能進行, 首先就要先能找到舊狀態的位置. 某個錯誤的電路或程式碼先要被找到, 其次才能對之做更換. 程式的可讀性, 可被修改的變數命名是否易記, 是否容易被人區分辨識, 就影響某 個關鍵變數能否很快被人找出來? 這就涉及變數的命名及可以舉一反三的命名規則. 反組譯的程式也是有自動產生symbolic name 的功能, 會把被程式修改到的變數及 其位置列印出來讓人參考. 需要用人(包含自己)協同合作發展的軟體, 在程式的設計上需要把關鍵用到的變數 或連接點等資訊, 透過人類的命名使下一個接替發展的人可以快速找到. 對這些點 的額外描述就是 易記名稱及comment. 但如果連這些關鍵變數的名稱及備註說明都不給, 下一個接手的人能不能後續接手 做進一步改進或發展? 從對程式的反組譯來比較, 有symbolic debug 支援修改變數對照表的產生, 原始程 式隱蔽關鍵變數的作用, 只是變得很難被一眼找出. self modified code 的行為, 通常只在 kernerl code 才會使用到. 譬如中斷服務 程式, 總是要把中段處理程式的入口位址需要到中斷向量表處做串接的修改. 這種 連接點的修改會影響程式與事件間的關連. 是否有正確的連接是在程式執行才發生, 核心系統的除錯追蹤工具可以協助把這種非正規(把指令當資料)的修改展示出來. Qemu 虛擬機的作者使用code translation 及類似 just in-time compiler 的轉譯 技術可以自動對 self modified code 及時進行對應的機器碼轉換. 這種 dirty code 招數也是能被破解的. =============== 程式軟體做出來是要讓電腦遵循, 替人類服務的. 也就是會被人拿去使用. 沒有人 肯用或能用的軟體, 跟不存在是一樣的. 電腦硬體設計同樣會出錯, 但電路的除錯, 麻煩太多, 所以造IC的產業會用軟體寫 的模擬器幫忙找出照做下去的IC可能會發生的錯誤. 預先防止錯誤, 是否能讓機器 自動執行? 機器是否能達到程式設計員的智能? 機器人時代的到來, 自動化程式的 產生暗示隱藏程式資訊, 不做備註只是在防人做合作學習而非防機器自動接手處理 後續工作. 程式設計師基本上就是透過機器來協助發展程式, 機器會取代後續處理的工作者是 必然發生的, 因為最後就是讓機器代替人做計算工作. 電腦協助除錯, 當然也會針對那些想隱藏軟體功能動作資訊的成品做處理. : → ggg12345: 可以維護的就找免付費的高手來做,不給改的就建平台找更 07/19 10:22 : → ggg12345: 高手私下給高薪來提供工具,工具能自動識別與處理萬行. 07/19 10:25 ========================================================================== -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.239.55 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1469084022.A.7EA.html

07/21 15:42, , 1F
頭香
07/21 15:42, 1F

07/21 15:46, , 2F
發費文喜批幣的渣無法可管嗎 煩死了
07/21 15:46, 2F

07/21 15:49, , 3F
言之有物 先推一個 等等沒內涵的老屁股會做垃圾護航
07/21 15:49, 3F

07/21 15:53, , 4F
這種文章有內涵 整篇都在發光 看了我都高潮了
07/21 15:53, 4F

07/21 15:55, , 5F
人不要臉天下無敵 目前為止我說的話都在跟我自已說話
07/21 15:55, 5F

07/21 15:57, , 6F
tech_j有這種板嗎? 就算有在這邊發文也是討噓
07/21 15:57, 6F

07/21 15:57, , 7F
地一行就不用客氣的2下去了 回文我懶得選自
07/21 15:57, 7F

07/21 16:00, , 8F
我不知道這樣洗批必有什麼意義 打完的時間工作還比較高
07/21 16:00, 8F

07/21 16:31, , 9F
幫補血 等等再來
07/21 16:31, 9F

07/21 17:09, , 10F
快了 等等再一下
07/21 17:09, 10F

07/21 17:12, , 11F
x1
07/21 17:12, 11F

07/21 17:26, , 12F
5566 似乎與樓主有血海深仇,噓成這樣
07/21 17:26, 12F
※ 編輯: ggg12345 (114.43.239.55), 07/21/2016 17:40:40

07/21 17:44, , 13F
這篇噓一下也是情理之中, 通篇不知所云 :p
07/21 17:44, 13F

07/21 17:52, , 14F
工三小跨隆摸
07/21 17:52, 14F

07/21 17:54, , 15F
csf在科技版也是肺紋王 還會幫gggg護航 不用客氣2下去
07/21 17:54, 15F

07/21 18:19, , 16F
看到Ommm5566 就覺得PTT真好,讓負面力量不會出現在
07/21 18:19, 16F

07/21 18:19, , 17F
現實社會
07/21 18:19, 17F

07/21 18:20, , 18F
PTT近幾年的好文也變少了,感謝這些破壞別人撰文美意的
07/21 18:20, 18F

07/21 18:20, , 19F
07/21 18:20, 19F

07/21 19:12, , 20F
純推不下
07/21 19:12, 20F

07/21 19:14, , 21F
原來不是只有我看不懂 每次看他的文都很痛苦
07/21 19:14, 21F

07/21 19:26, , 22F
這啥小XDD
07/21 19:26, 22F

07/21 19:48, , 23F
工殺小
07/21 19:48, 23F

07/21 20:39, , 24F
整篇不知所云,我到底看了三小啊,基本上真的是一種強者了
07/21 20:39, 24F

07/21 20:49, , 25F
看內文加上某護航真的很好笑 故事中再編故事一下就露底
07/21 20:49, 25F

07/21 21:10, , 26F
bios有修改電路?efuse吧
07/21 21:10, 26F

07/21 22:14, , 27F
感覺原po很強的樣子, 但是跟題目有關?
07/21 22:14, 27F

07/21 22:44, , 28F
原po講的太抽象 又太跳痛 被噓情有可原XD
07/21 22:44, 28F

07/21 23:08, , 29F
哈哈哈 只有垃圾會幫垃圾護航 剛剛看了一下uniq的文章
07/21 23:08, 29F

07/21 23:08, , 30F
誰才是只出現在ptt不會湧入現實的負能量 白癡都分得出來
07/21 23:08, 30F

07/22 00:20, , 31F
我看不懂,但是噓成這樣你是不是要冷靜下...
07/22 00:20, 31F

07/22 00:20, , 32F
連9噓耶?何苦浪費時間在自己不喜歡的文章上
07/22 00:20, 32F

07/22 00:51, , 33F
覺得讀起來還好。教科書差不多就是這個調調
07/22 00:51, 33F

07/22 01:54, , 34F
這廢文王又出來了...
07/22 01:54, 34F

07/22 03:19, , 35F
看起來超像文章自動產生器的東西…
07/22 03:19, 35F

07/22 11:57, , 36F
學習了,邁向高階主管之路,能在台上連續講1小時廢話是
07/22 11:57, 36F

07/22 11:57, , 37F
必須的
07/22 11:57, 37F

07/23 14:34, , 38F
看似高深卻牛頭不對馬尾的廢文
07/23 14:34, 38F

07/24 03:46, , 39F
0.0
07/24 03:46, 39F

07/28 22:32, , 40F
end
07/28 22:32, 40F
文章代碼(AID): #1Na75sVg (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1Na75sVg (Soft_Job)