天天看點

資訊安全系統設計基礎第十一周學習總結

異常控制流

異常

異常:控制流中的突變。在任何情況下,當處理器檢測到有事件發生時,會通過異常表的跳轉表,轉到異常處理程式。

異常處理:異常号;異常表(異常表基址寄存器)

異常類别:

  1. 中斷
  2. 陷阱
  3. 故障
  4. 終止

Linux /IA32

1.Linux/IA32 故障和終止

  1. 除法錯誤
  2. 一般保護故障
  3. 缺頁
  4. 機器檢查

Linux/IA32 系統調用

Linux提供上百種系統調用;IA32系統上,系統調用是通過一條 int n 的陷阱指令來提供的。

程序

程序的經典定義就是 一個執行中的程式的執行個體 。系統中的每一個程式都是運作在某個程序上下文中的。

  • 邏輯控制流
  • 并發流(并發 多任務 時間片 并行流 并行執行)
  • 私有位址空間
  • 使用者模式和核心模式
  • 上下文切換

系統調用錯誤處理

錯誤報告函數、錯誤處理包裝

程序控制:

  • 擷取程序ID
  • 建立和終止程序1. 運作2. 停止3. 終止
  • 回收子程序
  1. 判定等待集合的成員
  2. 修改預設行為
  3. 檢查已回收子程序的退出狀态
  4. 錯誤條件
  5. wait函數
  • 讓程序休眠

sleep(); pause();

  • 加載并運作程式
  • 利用fork和execve運作程式

信号

  • 發送信号

    1.程序組

    2.用/bit/kill程式發送信号

    3.從鍵盤發送信号

    4.用kill函數發送信号

    5.用alarm函數發送信号

  • 接收信号
  • 信号處理問題

    待處理信号被阻塞

    待處理信号不會排隊等待

    系統調用可以被中斷

***不可以用信号來對其他程序中發生的事件計數。

  • 顯式地阻塞和取消阻塞信号
  • 同步流以避免讨厭的并發錯誤

非本地跳轉

操作程序的工具

參考資料:《深入了解計算機系統》

問題:1.對信号處理等待機制有困惑