Error Reporting
Responsible for sending messages to the user about the status of applications
Memory Management
Allocates Memory to applications
File Management
Responsible for ensuring that a file does not overwrite existing/valid data on a hard disk
Resource Allocation
Responsible for allocating processor time and assigning priorities to applications