On 5/16/05, Andre Luiz da Silva <andrack@xxxxxxxxx> wrote: > Hello Friends!!! > I read in the KernelAnalysis-HOWTO, that Linux uses only four > segments, that are: Kernel Code, Kernel Data/Stack, User Code > and User Data/Stack, sure? yes, For code and data. It uses others too. for TSS etc.. > Well... in the other book (Linux Core Comentary) I read that each > process have one LDT. > My newbie question is: "How can each process alocate one LDT, if > the Linux uses only 4 segments?" GDT and LDT can have 8192 entries each. Only four GDT entries are configured as code and data. Others are used for other purposes like APM???? and the rest are used for Per processor TSS entry. GDT is Global i.e shared by all the tasks where as LDT is private. so each task can have its own ldt. Only three ldt entries Null, code and data were used in early kernels 1.x but i dont know how it is handled on 2.4+ and 2.6 For more information on Intel Segmentation Hardware, see Intel Official documents. developer.intel.com regards Manish Regmi -- --------------------------------------------------------- "Owning a hammer doesn't make one an architect" -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/