Process - HerobrinesArmy/entropy GitHub Wiki

This article is a stub.

What is a process?

A process is a program that has been loaded into memory, has been relocated and has run at least once. This means it is no longer relocatable, as it now depends on its location.

What a process looks like:

  • CODE and DATA - Usually, data is placed after code, this is however not always the case.
  • STACK space - This starts at the end of code&data and ends at the last word of the memory page. This is always at least 16 words long and at most 511+16=527 words long.
  • ALLOCATED MEMORY - This is located at arbitrary places in memory. A process starts out without and can then allocate memory as needed. As this is done, the process will also learn where this is located.

Metadata for processes is stored in the kernel. Stack space always has 16 words more than the program intended, to be used only by the kernel.