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

Поделиться
HTML-код
  • Опубликовано: 17 июн 2024
  • Course schedule: www.cs.uic.edu/~ckanich/cs361...

Комментарии • 27

  • @yonahcitron226
    @yonahcitron226 9 месяцев назад +6

    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

  • @stevewu9372
    @stevewu9372 3 года назад +3

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

  • @DJ-vx9gl
    @DJ-vx9gl 2 года назад +3

    Wonderful explanations, thank you!

  • @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" ruclips.net/user/TechInstance

  • @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 ruclips.net/user/TechInstance

  • @user-jx1go3bf8k
    @user-jx1go3bf8k 16 дней назад

    Thank you!

  • @alex_d_lee
    @alex_d_lee Месяц назад

    this is so good

  • @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 ruclips.net/user/TechInstance

  • @gleventhal
    @gleventhal 4 месяца назад +3

    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!

  • @ninjazhu
    @ninjazhu 11 месяцев назад +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.

  • @demablogia
    @demablogia Год назад +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 Год назад +2

      (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 2 года назад +1

    cool

  • @wonderfulworld2475
    @wonderfulworld2475 Месяц назад

    When someone on RUclips compress your 4 hour lecture into 20mns :D

  • @jiezhang5325
    @jiezhang5325 3 года назад +1

    This vedio solve my confusion!

  • @venumaj112
    @venumaj112 3 года назад +3

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

    • @gleventhal
      @gleventhal 4 месяца назад

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

  • @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.

  • @halleluyahwoldesenbetbrhan1099
    @halleluyahwoldesenbetbrhan1099 8 месяцев назад

    where can i get the slides

  • @arunraju9705
    @arunraju9705 2 года назад +2

    0.75 speed is good.