So every process has its own Page Table, the page table references the frame where the page is in physical memory and also has a valid-invalid bit that tells whether it is in physical memory or in secondary memory.
But how does the S.O. knows exactly where the page is saved when the valid-invalid bit it's off? Is there another table I'm missing? Or it just does a linear search through the whole SWAP space?