linux進程管理之訊號處理(1)

來源:互聯網
上載者:User

訊號是作業系統中一種很重要的通訊方式.近幾個版本中,訊號處理這部份很少有大的變動.我們從使用者空間的訊號應用來分析Linux核心的訊號實現方式.

一:訊號有關的資料結構

在task_struct中有關的訊號結構:

struct task_struct {……//指向進程訊號描述符  struct signal_struct *signal;   //指向訊號的處理描述符   struct sighand_struct *sighand;    //阻塞訊號的掩碼   sigset_t blocked, real_blocked;   //儲存的訊號掩碼.當定義TIF_RESTORE_SIGMASK的時候,恢複訊號掩碼   sigset_t saved_sigmask;   /* To be restored with TIF_RESTORE_SIGMASK */   //存放掛起的訊號   struct sigpending pending;     //指定訊號處理常式的棧地址   unsigned long sas_ss_sp;   //訊號處理常式的棧大小   size_t sas_ss_size;   //反映向一個函數的指標,裝置驅動用此來阻塞進程的某些訊號   int (*notifier)(void *priv);   //notifier()的參數   void *notifier_data;   //驅動程式通過notifier()所阻塞訊號的位元影像   sigset_t *notifier_mask;   ……}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.