What is the difference between batch jobs and background jobs
Batch job are the jobs created with sessions. You can process those sessions in SM35. These are not direct update methods.
Where as the background jobs are the jobs running in the background with out user interaction. Once you schedule the job for the background job it will run with out user interaction according to the given schedule.
You can run the batch jobs also in background.
To create a background job in SAP, enter the Define Background Job screen by using transaction code SM36 or menu path System ® Services ® Background jobs ® Job definition.
You can call the Job Selection transaction (transaction SM37) and check whether the jobs actually ran without errors.