This course provides a comprehensive introduction to operating system principles and internal mechanisms. It covers OS architectures and execution modes, process and thread management, CPU scheduling, memory management techniques and algorithms, file systems and access control, input/output handling, and peripheral management. Students also study synchronization mechanisms such as semaphores and monitors, developing a solid understanding of how modern operating systems ensure efficiency, security, and reliability.

The objective of this course is to  introduce  the theory of formal languages.

Languages ​​allow humans to exchange information and ideas and to communicate with machines.

The languages ​​used between humans are called 'natural languages', they are usually informal and ambiguous and require interpretation by a human brain to be interpreted correctly.

The languages ​​created by humans to communicate with the machine are the formal languages  or artificial languages. They must be formalized and unambiguous in order to be interpreted by a machine, this is the goal of this course.