Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8630609
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T09:05:53+00:00 2026-06-12T09:05:53+00:00

1.Every process has its own virtual address space and the kernel has its own

  • 0

1.Every process has its own virtual address space and the kernel has its own too,and kernel is a bunch of processes,does that mean every kernel process has its own virtual address space?

2.In a 32-bit architecture system,every process has a 4GB virtual address space,and what’s the size of kernel space?

3.0×00000000-0xffffffff of a user space is occupied by kernel, but they are different spaces,how is this implemented?

4.why kernel need to copy something into its own space?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T09:05:54+00:00Added an answer on June 12, 2026 at 9:05 am

    Every process has its own virtual address space and the kernel has its own too,and kernel is a bunch of processes,does that mean every kernel process has its own virtual address space?

    The kernel may have no special kernel processes. It may not even have special kernel threads. For instance, there were none in MSDOS, however primitive an OS it was. All it had was ISRs, lots of internal code for various things (e.g. file system drivers, memory manager, etc) and the system call API for applications.

    The OS can have some of its functionality provided by (or, IOW, delegated to) user processes. That’s the idea of micro kernels. These dedicated processes may have additional privileges compared to regular processes.

    In this case the kernel is pretty much a set of subroutines callable in some way by user processes (DOS was just that, except there were no processes and there was one address space for everything). The kernel still has to be accessible by all and for that reason the memory, where it resides, is shared (for example, via page translation) across all address spaces. Every kernel has such a common/shared part.

    In a 32-bit architecture system,every process has a 4GB virtual address space,and what’s the size of kernel space?

    It depends on the CPU and the kernel implementation. 32-bit Windows typically reserves 2GB for user and kernel portions of the address space. This may be overridden to 3GB for user and 1GB for kernel, if so is desired.

    0x00000000-0xffffffff of a user space is occupied by kernel, but they are different spaces,how is this implemented?

    It depends on the MMU of the CPU. With page tables on the x86 you can organize the entire virtual address space in such a way that only a part of it changes its mapping to physical memory (this is the user part) during a process/thread switch, while the other part remains the same (this is the shared kernel part).

    Usually, there’s just one virtual address space from the CPU standpoint. But its common to call its parts as separate, user and kernel virtual address spaces.

    why kernel need to copy something into its own space?

    How would it take input from processes, e.g. syscall parameters? But most importantly, what if it has to perform some long processing of input asynchronously, just taking the input, letting the caller continue and then signalling the caller when the work’s done? The calling process may be free to modify or deallocate the data buffer that it’s just passed to the kernel. The kernel may not be very “happy” to observe the data it’s working with change or disappear. If there are multiple threads in the process, this problem can occur even with synchronous calls, because another thread can alter the buffer, while the kernel is working with it.

    There can be other reasons for copying data to or keeping it in the kernel portion of the address space.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I imagine that no, they aren't, because every process has its own memory space,
I want to ask something about Unified Process. In UP, every iteration has its
I need to create daemon that will monitor certain directory and will process every
I'm stumped. I've created an upload image process that works in every browser except
We have a process that needs to run every two hours. It's a process
I want to process every element of a for-loop. Taking this code, why is
We have a feed process which runs every day of the year. As part
I know this is more heavy question, but I think its interesting too. It
I'd like to run a web container where each webapp runs in its own
Here is a little background information. I'm working on replacing a dll that has

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.