2009-11-10 4 views
0

Могут ли динамические библиотеки иметь глобальные, локальные и статические переменные в Linux?Динамические библиотеки с локальными и статическими переменными

Если да, то где будет храниться каждая из этих переменных в памяти?

На мой взгляд, Globals и Static будут вместе с разделом кода динамических библиотек , в то время как местные жители должны быть объявлены в стек исполняемого файла, совершая вызовы функций динамических библиотек.

ответ

2

Ваше мнение неверно (неоднозначная терминология в стороне) ... не уверен, что именно вы здесь.

+0

Если вы посмотрите на cat/proc//mmap в linux, это даст вам карту памяти, я хотел бы знать, где будут храниться глобальные, статические и локальные переменные динамических библиотек? Глобалы и статические переменные будут находиться выше раздела динамического кода библиотеки в памяти Локальные переменные должны лежать в стеке программы, называемой функцией динамической библиотеки. Пожалуйста, исправьте, если мое понимание неверно? – Sashi

+0

@ Саши, вы правы. – pierrotlefou

Смежные вопросы