# Operating Systems

{% hint style="info" %}
Much like [sql](https://interviews.woojiahao.com/other-technical-topics/system-design/sql "mention"), there is too much things to cover when talking about operating systems and most importantly, concurrency patterns. I have attached my notes from the operating systems module in NUS ([CS2106](https://nusmods.com/courses/CS2106/introduction-to-operating-systems)) for you to self-study
{% endhint %}

{% file src="<https://2726477159-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjAfNlXNVLzsC3J7sS0s2%2Fuploads%2FUtZ4eToTkm6ZOZxXO5hJ%2FCS2106_Finals_Revision.pdf?alt=media&token=507b10f2-1f0b-4819-9a09-f790437d6c7b>" %}
Notes
{% endfile %}

{% file src="<https://2726477159-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjAfNlXNVLzsC3J7sS0s2%2Fuploads%2FspWI6jJGthiecfs3GAGd%2FCS2106_Concurrency_Problems.pdf?alt=media&token=d45dacb9-15ac-4d18-a634-b74a39feab0f>" %}
Classical concurrency problems
{% endfile %}

Some of the other commonly asked questions include things like:

1. What is a deadlock?
2. What is a race condition?
3. What is the difference between deadlocks and race conditions?
4. How do you detect a deadlock?
5. How do you solve a deadlock?
6. What is paging?
7. What is a page fault?
8. Where are logs stored on a Linux system?
9. How do you deal with thread explosion?


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://interviews.woojiahao.com/other-technical-topics/operating-systems.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
