top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

When some one says Address space of a process, what exactly he means by that? PCB?

0 votes

As far as i know thread has the same address space as main process, that means there is no change in PCB for it right?

posted Jun 19, 2015 by anonymous

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

+1 vote

Address space is the amount of memory allocated for all possible addresses for a process. Or in simple words Address Space refers to all memory a process can address. In general OS isolates address spaces of a process and One process can’t access another’s address space. Address space may refer physical or virtual addresses based on context.

Sample Process in the memory -
Process in Memory

Virtual to Physical Address Mapping -
Sample virtual to physical mapping

answer Jul 4, 2015 by Salil Agrawal
Similar Questions
+2 votes

I have a process which is running as a linux service and assigns IP addresses using netlink to configued interface in linux.
For IPv4 addresses i do not see any issue with this assignment.

When i try to assign an IPv6 address, the address gets assigned successfully to the interface, but the Neighbour Solication request received for that address is not responded with and hence ping6 from a different machine doesn't work.

When i take the same netlink code and run it in a sample program the address gets assigned and the Neighbour solicitation is responded with a advertisement and hence ping6 works.

IP assigned by the program : 7000::15/32
IP on client machine from where ping6 is done : 7000::17/32.

Bot machines are connected to same Layer-2 switch.

I have flushed the ip6tables on both the machines just to rule out any firewall issues.

0 votes

I came under a term "address space layout randomization" ? What is the meaning of it ?

Can any one give any example on it how it works and what happens in this feature ?

+4 votes

Lets assume I have a system with RAM of 1GB. and virtual memory is 500MB. That brings to 1.5GB i.e. 1500 MBytes.

I have read somewhere that when I process is created stack of 8MB is associated to that process. So, assuming that any of the process is not allocating any dynamic memory or anything, then does it mean that, Maximum number of process that i can create is 1500/8 and i.e. 187 Process.

Please clarify my understanding,