Try   HackMD

Linux kernel COW 問題清單

contributed by < linD026 >

tags: Linux kernel COW , linux2021

整體篇章

linD026 Sun, Jun 6, 2021

  • 目前整體書寫的架構以及問題?

linD026 , , 2021


Part 1 實作機制

linD026 Sun, Jun 6, 2021

  • context switch 對於 記憶體的清除以及移入在 COW 上能有改進或使用到?
  • page table 在 memory region 篇章有提到其他 process 可能會使用到其他 process 的 page table ,什麼樣的情況下會用到?
  • arm 架構的 write 和 read 的權限之間是一體兩面的,其他的是如何?
  • node 、 zone 、 pg_data_t 、 mem_section 從程式碼上可以看出有些許關聯性,想問他們之間的關係以及整體 memory model 的架構。
  • 看起來 driver 對記憶體使用的權限以及被管理的方式與一般的有所不同,有什麼有趣的管理機制或是用手段?

linD026Mon, Jun 28, 2021 5:42 PM

  • MMU notifier

linD026Tue, Jul 6, 2021 3:52 AM

  • waitqueue - enough to use ?

linD026Wed, Jul 21, 2021 11:15 PM


Part 2 Memory Region

linD026 Sun, Jun 6, 2021

  • lazy TLB 的觀念釐清。
    • 在 kernel portion only ?

linD026Tue, Jun 29, 2021 2:48 PM

  1. do_fault -> do_cow_fault
  2. do_translation_fault (hooked, when first level page table doesn't contain a valid address) -> do_page_fault -> handle_mm_fault -> handle_pte_fault -> do_wp_page

Part 3 process

linD026 , , 2021

  • NULL

Part 4 實驗

linD026 , , 2021

  • NULL

Others

linD026Sat, Jul 3, 2021 6:36 PM

  • wait_on_page => 全域變數 page_wait_table 有 256 entries ,用什麼機制轉換使用?