How many segments a process can have in operating system employing Segmentation for memory management Some facts about "Segmented Paging"

1)  Each process has one segment table.
2)  There is one-page table per segment.

Fact about "Paged segmentation" 

3)  Contains page table of segment table.

Now consider following problem


  In a paged segmented scheme of memory management, the segment table itself must have a page table because. 
  (A)  The segment table is often too large to fit in one page.
  (B)  Each segment is spread over a number of pages.
  (C)  Segment tables point to page tables and not to the physical locations of the segment.
  (D)  The processor’s description base register points to a page table


Given solution is:

Here option (A) is true , as segment table are sometimes too large to keep in one pages. So, segment table divided into pages. Thus page table for each Segment Table pages are created.

My Doubt

I believe a page can contain several hundreds of segment table entries of form 

  &lt;segment base, limit&gt;


I only came across code, data, stack and heap segments. I believe a process can have only these  "four" segments. And also, we know each process has a segment table (Fact 1). Then how a segment table can grow so large that it cannot be fitted in a single page?
A process can only access 6 segments simultaneously through CS, SS, DS, ES, FS, and GS registers on an x86 and x86-64 machines.

These registers point to an entry in the segment descriptor table that the operating system manages. If OS uses a multi-segment memory model then that table can have an arbitrary size thus allowing a process to access a theoretically unlimited number of segments. (Intel 64 and IA-32 Architectures
Software Developer’s Manual 3-6 Vol.3)