[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Про адресное пространство.



10.01.2013 13:22, Dmitrii Kashin пишет:
> Сегодня игрался с gdb и обнаружил интересную вещицу.
>
> Я запустил 2 экземпляра gdb с одним и тем же исполняемым файлом (назовем
> его - test). Дизассемблировал функцию main(), и обнаружил, что адреса в
> обоих экземплярах gdb - совпадают.
>
> Походу, я что-то не так понимаю. Я полагал, что когда я запускаю процесс
> - ему выделяется свое адресное пространство. И таким образом, если я
> запущу два экземпляра программы 'test', адрес функции main первого
> экземпляра должен отличаться от адреса одноименной функции второго
> экземпляра, т.к. они находятся в разных адресных пространствах.
>
> Судя по всему, что-то из этого работает не так, как мне казалось. Вот я
> и хотел бы узнать у знающих людей, что именно.
>
Прочтите что нибудь на тему защищенного режима.
Хоть в той же википедии.
Если коротко - адреса программы в непривилегированном режиме не обязаны
совпадать с адресами физической памяти.
Благодаря этому, в частности, программа может выделить себе больше
памяти чем есть физически и адресоваться к ней.


Reply to: