Solution:The given reference string :
1, 2, 3, 4, 5, 3, 4, 1, 6, 7, 8, 7, 8
Number of frames : 4
Let's simulate the algorithm step by step
1. Frame status [–, –, –,–] page fault! Page 1 is loaded into frame 1.
2. Frame status : [1, –, –, –] Page fault! Page 2 is loaded into frame 2.
3. Frame status : [1, 2, –, –] page fault! Page 3 is loaded into frame 3.
4. Frame status : [1, 2, 3, –] page fault! Page 4 is loaded into frame 4.
5. Frame status : [1, 2, 3, 4] page fault! Page 5 is loaded into frame 1.
6. Frame status : [5, 2, 3, 4] page fault! Page 3 is already in a frame so no page fault occurs.
7. Frame status : [5, 2, 3, 4] page fault! Page 4 is already in a frame, so no page fault occurs.
8. Frame status : [5, 2, 3, 4] page fault! Page 1 is already in a frame, so no page fault occurs.
9. Frame status : [5, 2, 3, 4] page fault! Page 6 is loaded into frame 2.
10. Frame status : [5, 6, 3, 4] page fault! Page 7 is loaded into frame 3.
11. Frame status : [5, 6, 7, 4] page fault! Page 8 is loaded into frame 4.
12. Frame status : [5, 6, 7, 8] page fault!
Now, when Page 7 is requested again, it will be replaced because it's the last occurrence in the reference string that requires a page replacement. Total page faults : 8
So, for the given reference string and four frames the optimal algorithm result in 8 page faults.