Action name: EditSegmentThis command allows you to change segment attributes. You can change all attributes except the segment base. To change the segment base, you have to delete the segment and create it again.
Please use the following links to learn about the segment attributes:
How to change segment name How to change segment class How to change segment addressing mode (16/32) How to change segment alignment How to change segment combinationChanging the segment class may change the segment type.
MOVE ADJACENT SEGMENTS: means that the previous and next segments will be shrunk or expanded to fill gaps between segments. Click here for more information.
DISABLE ADDRESSES: if set, when a segment is shrunk, all information about bytes going out of the segment will be completely removed.. Otherwise, IDA will discard information about instructions/data, comments etc, but will retain byte values so that another segment can be created later and it will use the existing byte values.
If IDA creates 2 segments where only one segment must exist, you may try the following sequence:
- delete one segment. Choose one with bad segment base value. Do not disable addresses occupied by the segment being deleted. - change bounds of another segment.Note that the create segment command changes the boundaries of the overlapping segment automatically.
Segments with the 'debugger' attribute are the segments whose memory contents are not saved in the database. Usually, these segments are created by the debugger to reflect the current memory state of the program.
However, the user can modify this attribute.
If it is cleared, then the segment will permanently stay in the database after closing the debugger session. The database will reflect the state of the segment which was at the time when the status is changed.
If it is set, then the segment will become a temporary segment and will be deleted at the end of the debugging session.
The "debugger segment" checbkox is available only during debugging sessions.
The 'loader' segments are the segment created by the file loader. The segment having this attribute are considered to be part of the input file.
A segment with the 'debugger' attribute set and the 'loader' attribute not set is considered to be an ephemeral segment. Such segments are not analyzed automatically by IDA.
"Segment permissions" group box can be used to modify Segment access permissions (Read/Write/Execute)
See also Edit|Segments submenu.