Re: process address space

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

 



On 11/18/08, ruby <ruby185@xxxxxxxxx> wrote:
> hi, all
>
>  One line I often read is each process is given a unique 32-bit or 64-bit flat address space, known as process address space.
>
>  So it sounds like a process have the whole space to itself and read or write as it wants, but it is not entirely true since before it can read or write, it must ask kernel for it, to get a so-called memory area (represented by vm_area_struct), is this understanding correct?

There is a memory management subsystem of the kernel which checks if a
read/write to
 memory is legitimate, allocates and deallocates memory for the
user-space processes.
' vm_area_struct '  is a data-structure of the mm subsystem.

>  Another related question is when people talks about 1G/3G split, 1G is for kernel, 3G is for process, are they referring to the same process address space?

Yes.

>  For each process's address space, in addition to its own code, data, shared library code and data etc. are there any kernel code in it? that doesn't make much sense.

There is a clear cut seperation of the memory space between  kernel
and user space.






-- 
Smart data structures and dumb code works a lot better than the other way
around. -Eric S Raymond

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux