Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8591175
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 11, 20262026-06-11T23:27:59+00:00 2026-06-11T23:27:59+00:00

What is the difference between .got and .got.plt section in ELF format?

  • 0

What is the difference between .got and .got.plt section in ELF format?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-11T23:28:00+00:00Added an answer on June 11, 2026 at 11:28 pm

    My previous comment turns to be right:

    I think .got is for relocations regarding global ‘variables’ while .got.plt is a auxiliary section to act together with .plt when resolving procedures absolute addresses.

    The example below makes things a bit clear.

    These are the relocations for my 32 bits i686-linux /lib/libm.so

    Relocation section '.rel.dyn' at offset 0x32b8 contains 8 entries:
     Offset     Info    Type            Sym.Value  Sym. Name
    00025030  00000008 R_386_RELATIVE   
    00024fd8  00005706 R_386_GLOB_DAT    00025034   _LIB_VERSION
    00024fdc  00000406 R_386_GLOB_DAT    00000000   __gmon_start__
    00024fe0  00000506 R_386_GLOB_DAT    00000000   _Jv_RegisterClasses
    00024fe4  00000806 R_386_GLOB_DAT    00000000   _rtld_global_ro
    00024fe8  00000906 R_386_GLOB_DAT    00000000   stderr
    00024fec  00013006 R_386_GLOB_DAT    0002507c   signgam
    00024ff0  00000e06 R_386_GLOB_DAT    00000000   __cxa_finalize
    
    Relocation section '.rel.plt' at offset 0x32f8 contains 12 entries:
     Offset     Info    Type            Sym.Value  Sym. Name
    00025000  00000107 R_386_JUMP_SLOT   00000000   fputs
    00025004  00000207 R_386_JUMP_SLOT   00000000   __errno_location
    00025008  00000307 R_386_JUMP_SLOT   00000000   sprintf
    0002500c  00000407 R_386_JUMP_SLOT   00000000   __gmon_start__
    00025010  00000607 R_386_JUMP_SLOT   00000000   strtod
    00025014  00000707 R_386_JUMP_SLOT   00000000   __assert_fail
    00025018  00000a07 R_386_JUMP_SLOT   00000000   strlen
    0002501c  00000b07 R_386_JUMP_SLOT   00000000   strtof
    00025020  00000c07 R_386_JUMP_SLOT   00000000   fwrite
    00025024  00000d07 R_386_JUMP_SLOT   00000000   strtold
    00025028  00005e07 R_386_JUMP_SLOT   00005970   matherr
    0002502c  00000e07 R_386_JUMP_SLOT   00000000   __cxa_finalize
    

    Look that as you noted there are two relocation sections, namely .rel.dyn and .rel.plt. You can see that all relocations for .rel.plt are of type R_386_JUMP_SLOT which means that they are branch relocations on the other hand almost all relocations in .rel.dyn are R_386_GLOB_DAT which means relocation for global variables.

    Another subtle difference exist between .symtab and .dynsym. While the first contain references for all symbols used during static link editing the later contain only those symbols needed for dynamic linking. Thus, the relocations mentioned above refer only to .dynsym section.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I've got a question regarding the difference between PropertyPlaceholderConfigurer (org.springframework.beans.factory.config.PropertyPlaceholderConfigurer) and normal filters defined
Ok so got through my last problem with the difference between Postgresql and SQLite
Possible Duplicate: What's the difference between utf8_general_ci and utf8_unicode_ci I've got two options for
I've got a bit of code here that calculates the hours difference between two
I've got a page where two dates are selected and the inclusive difference between
I started to use SlickGrid and I got confused about the difference between Data
I was reading a question on difference between Thread and Task. I got this
So I've got a program that needs to be multilingual. The only difference between
I am studying Cnc programming and I got stuck on the difference between G41
read many posts about the difference between the 3 idioms. But got more confused,

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.