understanding mmap, the workhorse behind keeping memory access efficient in linux

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ก.ย. 2024

ความคิดเห็น • 30

  • @yonahcitron226
    @yonahcitron226 ปีที่แล้ว +10

    It’s a joke that this is available online for free. Absolute gold. Love every minute!

  • @j5ylim396
    @j5ylim396 ปีที่แล้ว +7

    wished my lecturers were like this. great one man, cheers

  • @whata4head666
    @whata4head666 3 ปีที่แล้ว +9

    Greetings from Brazil Chris, just wanna say thank you, you're really helping me :)

    • @ZubairAhmad-wu2tw
      @ZubairAhmad-wu2tw 3 ปีที่แล้ว

      you might also want to watch "Tech Instance" th-cam.com/users/TechInstance

  • @kafoby8732
    @kafoby8732 2 หลายเดือนก่อน

    Thank you for making these lectures FREE!!

  • @urbankoistinen5688
    @urbankoistinen5688 3 หลายเดือนก่อน

    It is also worthwhile to test that the system does what the documentation seems to imply it should do.
    Try mmap on a large file using different flags, see what happens when the file is cashed in main memory.

  • @wonderfulworld2475
    @wonderfulworld2475 5 หลายเดือนก่อน +1

    When someone on TH-cam compress your 4 hour lecture into 20mns :D

  • @demablogia
    @demablogia 2 ปีที่แล้ว +4

    Great video, thanks. One question: when source is compiled & linked into an ELF file , this file doesn't have any virtual address but local offsets. So , I guess, someone and sometime translate those local offsets to virtual adresses . Is the code (.text, .data ) stored into real memory modified ( by someone ) with virtual address references ? Or code stored into real memory still has got offsets ?

    • @Henry-sv3wv
      @Henry-sv3wv ปีที่แล้ว +3

      (i am no expert, just writing what i just learned from web)
      * every process only "sees" virtual memory.
      * a static linked ELF contains no symbols and is ready to run with a fixed entry point address.
      * an ELF that uses dynamic libraries contains symbols and needs dynamic linking which is done by the loader ( ld-linux )
      In my current Arch Linux the dynamic linker/loader ld-linux is: ld-linux-x86-64.so.2 coming from the glibc 2.36 library package. (it itself is a statically linked ELF executable)

  • @nang88
    @nang88 3 ปีที่แล้ว +1

    cool

  • @halleluyahwoldesenbetbrhan1099
    @halleluyahwoldesenbetbrhan1099 ปีที่แล้ว

    where can i get the slides

  • @winstonacousticstudio445
    @winstonacousticstudio445 3 ปีที่แล้ว

    how many weeks does this course last for?

    • @ChrisKanich
      @ChrisKanich  3 ปีที่แล้ว +3

      It's a 15 week course - I put a link to the schedule in the description.

  • @flyxtop
    @flyxtop 3 ปีที่แล้ว +4

    thanks I learned some things today again! (I knew this earlier but it's interesting every program or library exists as a file)

    • @ZubairAhmad-wu2tw
      @ZubairAhmad-wu2tw 3 ปีที่แล้ว

      give "Tech Instance" a try too th-cam.com/users/TechInstance

  • @DJ-vx9gl
    @DJ-vx9gl 2 ปีที่แล้ว +3

    Wonderful explanations, thank you!

  • @stevewu9372
    @stevewu9372 3 ปีที่แล้ว +3

    Thank you, Chris, I learned a lot from you!

  • @ninjazhu
    @ninjazhu ปีที่แล้ว +1

    That is one method of implementing VM. There are multiple methods. Not all hardware has the came features which limits sometimes which techniques are used and can even force you to think outside the box which programmers should do anyway.

  • @venumaj112
    @venumaj112 3 ปีที่แล้ว +3

    Is it possible to use mmap which is huge pages backed ?

    • @gleventhal
      @gleventhal 7 หลายเดือนก่อน

      Yes, see the man page (MAP_HUGETLB and MAP_HUGE_2MB, etc)

  • @glenyeldho5782
    @glenyeldho5782 3 ปีที่แล้ว +3

    Waiting for the next video in this series 😁😁

    • @ZubairAhmad-wu2tw
      @ZubairAhmad-wu2tw 3 ปีที่แล้ว

      I found Y/T channel "Tech Instance" helpful too th-cam.com/users/TechInstance

  • @arunraju9705
    @arunraju9705 2 ปีที่แล้ว +2

    0.75 speed is good.

    • @kiloton5764
      @kiloton5764 2 ปีที่แล้ว +1

      LOL I used 1.5

  • @alex_d_lee
    @alex_d_lee 4 หลายเดือนก่อน

    this is so good

  • @janshaka
    @janshaka 3 หลายเดือนก่อน

    Thank you!

  • @gleventhal
    @gleventhal 7 หลายเดือนก่อน +4

    Boy, do I love when a native english speaker who actually knows the topic well presents a technical topic this well. Thanks for being you!

  • @jiezhang5325
    @jiezhang5325 3 ปีที่แล้ว +1

    This vedio solve my confusion!