Could Minix use separate segments for stack and data?
Minix uses the Intel i386 protection mechanisms to define code, data, and stack segments. Executable instructions in the code segment are read-only, and it is impossible for data in the data or stack areas to be treated as executable code. However, Minix, in the tradition of other Unix-like systems, does not distinguish between data and stack areas — although data and stack use separate segment descriptors and could be protected from each other by the hardware, Minix initializes the data and stack descriptors to point to the same area of memory. A question was asked on the comp.os.minix newsgroup as to whether separate data and stack areas could be used, and what would be the advantages and disadvantages of doing it either way. David Given