Linux Debuginfo Formats - DWARF, ELF, dwo, dwp - What are They All? - Greg Law - CppCon 2022

Поделиться
HTML-код
  • Опубликовано: 1 ноя 2024

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

  • @Omnifarious0
    @Omnifarious0 Год назад +12

    I expected a deeper dive into what was in the debug information rather than an overview of various tools for pulling apart binaries to see what's where.
    Still a lot of useful information. Thank you.

  • @Karim-nq1be
    @Karim-nq1be 2 месяца назад

    Really enjoyed this talk, learned interesting stuff about ELF. Thank you.

  • @kg3217
    @kg3217 Год назад +2

    This is what I was looking in the past days (dwarf and debuginfo), thanks cppcon for having this 😁

  • @rutabega306
    @rutabega306 Год назад

    Wow seriously after a few years, I still don't know what an ELF file is. Looking forward to watching this talk!

  • @JATmatic
    @JATmatic Год назад +6

    24:40: "I'm a C programmer, The puny compiler is no match for me!" 😂

  • @Chabdi111
    @Chabdi111 2 месяца назад

    Amazing video

  • @wojciechbartczak3109
    @wojciechbartczak3109 Год назад +5

    I was looking forward to see this material. Unfortunately, this presentation is kind of lost time for me.
    It lacks consistency and some definitions and references. DWARF itself is huge topic and here almost nothing is said abut it. If you look for deeper knowledge and understanding of DWARF and debugging, you won't find it here.
    If you need to be guided through available tools for debugging and handling binaries then this presentation might be good idea. Nevertheless, I appreciate effort of the presenter. I know it's hard go do such presentations for larger audience.

    • @arisweedler4703
      @arisweedler4703 Год назад +2

      Do you have any recommended talks about DWARF?

  • @wangyi8848
    @wangyi8848 Год назад

    Good topic!

  • @simonfarre4907
    @simonfarre4907 Год назад +1

    RR doesn't need debug info either. RR isn't a traditional debugger as much as it is, what I would call, an execution supervisor.
    The actually debugging experience is via GDB, that rr spawns for you.

  • @arisweedler4703
    @arisweedler4703 Год назад

    An interesting and enjoyable first look into the previously mysterious (to me) ELF file format. Very hands on and practical, retrieving the information when you know all the tools really looks quite fluid
    Setting up a debuginfod server at my workplace seems like it might be a good idea. One of our devs was bemoaning the fact that there’s nothing like MS Symbol Server a few years ago, well I might have good news for him now.

    • @llothar68
      @llothar68 Год назад

      There wasn't. I love that linux is better with debuginfo now . But remember this stuff is less than a year old. While microsoft has it for almost 20 years. Linux is not really progressive and innovative in any way

  • @dkosmari
    @dkosmari Год назад +2

    40:09 Indeed, Emacs can do all that right away, with org-mode. Sorry vim users, keep it to text editing, if you want a W.

    • @tui3264
      @tui3264 Год назад +2

      Emacs was slow as hell specially in big C++ projects when last time i tried, no multithreading sucks , unless it is rewritten with modern system Emacs is no go

    • @_FFFFFF_
      @_FFFFFF_ Год назад

      Perhaps you mean org-babel with the shell extension. I use this for documenting every shell command I run for documenting process.

    • @arisweedler4703
      @arisweedler4703 Год назад +1

      Idk if you’re joking about org mode being able to do that (if you’re not please explain, if you are, lol). But this guy doesn’t know how to use vim to the fullest potential. He coulda used the :! command instead of $(( )) shell arithmetic, with the program awk ‘/SIZE/ {next;} {sum+=$} END {print sum}’ to do all of that filtering much faster. Tbh didn’t need a text editor at all. That was just the easiest way for him to string together a known set of operations to do the thing. That’s what computers are all about
      Good on him, but absolutely no room for any emacs smugness 😁😂

  • @sirhenrystalwart8303
    @sirhenrystalwart8303 9 месяцев назад

    RE non-relocated code: what happens if two things with the same pre-determined address try to run at the same time? Is than an additional layer of remapping somewhere else to prevent collisions?

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

      Yes. This is what is called virtual memory and is handled by cpu and OS. In translates virtual address to a physical one. So 10 apps will use same virtual address but phisycally memory pages will be located in different addresses. You may also read about mmu. Memory management unit.

  • @uriituw
    @uriituw Год назад +1

    "What are They All?"

  • @nottellinganyoneanything
    @nottellinganyoneanything Год назад +2

    i hate the name of vscode - it totally broke seaching stuff about the normal visual studio

  • @player-eric
    @player-eric Год назад

    [Abort at 21:28]
    As a C++ beginner, one of my impressions is that we can look at ELF in a `.out` file. But, actually, I still do not get the value or motivation of the necessary reason for doing all the stuff in the video.

  • @denisfedotov6954
    @denisfedotov6954 Год назад +1

    The talk is an eloquent proof of the superiority of fish over bash. The speaker spends so much time struggling with history navigation during live demos...

    • @retropaganda8442
      @retropaganda8442 Год назад

      I think in fairness he's not familiar with the many readline features. Are you?