iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 8
1
Software Development

闖入DLL的世界 DLL我要進來了哦系列 第 8

第八天:Program Process Thread又有三角戀?

  • 分享至 

  • twitterImage
  •  

大家好我是Andy,今天是第八天,時間過得好快啊一下子一個禮拜就過去了,在實際實現注入之前我們要先了解進程和線程的關係,話不多說我們直接進入。

Program

Program意指程式,也就是說這是我們的exe,但是是未執行的時候,因為如果是執行的話那就已經被CPU分配記憶體。

舉個例子來說這就是餐廳

Process

Process意指進程,也就是執行時候的exe被CPU分配記憶體,也被CPU分配了PID實際上我們點開工作管理員的詳細資料

舉個例子來說這就是管廚房的主廚師


會看到一堆PID這些都是在執行的時候由CPU去分配,所以每次點開來的PID都不一樣,也就是說為甚麼我們要用FindWindow去鎖定視窗,再去抓取PID就可以對程式進行索引,或是調用別的Dll進去,也好像可以用這種方法去躲偵測

而Process也可以擁有許多相同名字的Program

Thread

Thread意指線程,在一個Process中會有許多個Thread,每一個Thread都會有屬於自己的功能

舉個例子來說在廚房內有人負責甜點,有人負責湯品的概念


所以Program、Process和Thread是層層相關的

重點整理

Program

  • 未執行的exe

Process

  • 可以擁有很多相同Program的名字
  • 每個都是獨立的
  • 不是靠Process執行

Thread

  • 同個Process會同時存在多個Thread
  • 同個Process記憶體、變數共享

結語

今天簡單介紹了程式、進程和線程的關係,目前賽程已經剩下22天了,希望我可以堅持到最後,也很感謝觀看的各位,我們明天見,突然覺得下面這張圖好中肯


上一篇
第七天:要用甚麼觀察dll呢?顯微鏡?
下一篇
第九天:這三個函數是甚麼?
系列文
闖入DLL的世界 DLL我要進來了哦30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言