Foreground and Background Sector Switch (FSS vs BSS)


What is the difference between a foreground (FSS) and a background sector switch (BSS)?

A sector switch is started as soon as a configured threshold is reached in the newer sector. In case the BSS threshold is exceeded, the FEE starts a sector switch in the background. This means the FEE copies the blocks as long as no user job will occur. If a user job occurs while a background sector switch is executed, the FEE aborts the sector switch in a non-destructive way and processes the user job. However, in some cases (e.g. the FEE has requested a Fls erase operation and waits for it to be finished) this may take some time. After the interrupting job is finished, the FEE restarts the sector switch from scratch. A BSS can either be triggered by a read or a write-like job.

Since a background sector switch might never finish if many user jobs shall be processed, the FEE can also process a sector switch in the foreground. In case the FSS threshold (higher than BSS threshold) is exceeded, the FEE defers the job and executes the sector switch itself before executing the job. A FSS can only be triggered by a write-like job.

Article ID: 1189
Last updated: 2020-05-14
Revision: 4
MICROSAR and DaVinci -> Troubleshooting -> MICROSAR MEM -> Foreground and Background Sector Switch (FSS vs BSS)