{"id":13620862,"url":"https://github.com/xxyzz/ostep-hw","last_synced_at":"2025-04-12T14:56:52.557Z","repository":{"id":41192947,"uuid":"163654041","full_name":"xxyzz/ostep-hw","owner":"xxyzz","description":"Operating Systems: Three Easy Pieces(OSTEP) homework and project solutions ","archived":false,"fork":false,"pushed_at":"2024-02-03T14:35:58.000Z","size":1810,"stargazers_count":806,"open_issues_count":5,"forks_count":182,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-03T14:11:02.545Z","etag":null,"topics":["c","operating-system","ostep","python"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xxyzz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"liberapay":"xxyzz"}},"created_at":"2018-12-31T08:53:37.000Z","updated_at":"2025-03-28T13:45:19.000Z","dependencies_parsed_at":"2024-01-14T08:14:44.984Z","dependency_job_id":"53eaf44c-b6d6-4ae7-b4ff-79395a8dc234","html_url":"https://github.com/xxyzz/ostep-hw","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xxyzz%2Fostep-hw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xxyzz%2Fostep-hw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xxyzz%2Fostep-hw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xxyzz%2Fostep-hw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xxyzz","download_url":"https://codeload.github.com/xxyzz/ostep-hw/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248586249,"owners_count":21128997,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","operating-system","ostep","python"],"created_at":"2024-08-01T21:01:00.125Z","updated_at":"2025-04-12T14:56:52.529Z","avatar_url":"https://github.com/xxyzz.png","language":"C","funding_links":["https://liberapay.com/xxyzz"],"categories":["C"],"sub_categories":[],"readme":"# OSTEP-HW\n\n[Operating Systems: Three Easy Pieces](https://pages.cs.wisc.edu/~remzi/OSTEP) homework solutions\n\n[CS-537 videos](https://pages.cs.wisc.edu/~remzi/Classes/537/Spring2018/Discussion/videos.html)\n\n## Requirements\n\n- Unix-like operating system\n\n- [Clang](https://clang.llvm.org)/[GCC](https://gcc.gnu.org)\n\n- [LLDB](https://lldb.llvm.org)/[GDB](https://www.gnu.org/software/gdb)\n\n- [Valgrind](https://valgrind.org)\n\n- [Gawk](https://www.gnu.org/software/gawk)\n\n- [Python](https://www.python.org)\n\n- 🐈\n\n## [ostep-projects](./projects)\n\nC/Linux Projects and Kernel Hacking Projects (xv6)\n\n## Chapters\n\n### Virtualization\n\n4. [The Abstraction: The Process](./4)\n\n5. [Interlude: Process API](./5)\n\n6. [Mechanism: Limited Direct Execution](./6)\n\n7. [Scheduling: Introduction](./7)\n\n8. [Scheduling: The Multi-Level Feedback Queue](./8)\n\n9. [Scheduling: Proportional Share](./9)\n\n10. [Multiprocessor Scheduling (Advanced)](./10)\n\n11. Summary Dialogue on CPU Virtualization\n\n12. A Dialogue on Memory Virtualization\n\n13. [The Abstraction: Address Spaces](./13)\n\n14. [Interlude: Memory API](./14)\n\n15. [Mechanism: Address Translation](./15)\n\n16. [Segmentation](./16)\n\n17. [Free-Space Management](./17)\n\n18. [Paging: Introduction](./18)\n\n19. [Paging: Faster Translations (TLBs)](./19)\n\n20. [Paging: Smaller Tables](./20)\n\n21. [Beyond Physical Memory: Mechanisms](./21)\n\n22. [Beyond Physical Memory: Policies](./22)\n\n### Concurrency\n\n26. [Concurrency: An Introduction](./26)\n\n27. [Interlude: Thread API](./27)\n\n28. [Locks](./28)\n\n29. [Lock-based Concurrent Data Structures](./29)\n\n30. [Condition Variables](./30)\n\n31. [Semaphores](./31)\n\n32. [Common Concurrency Problems](./32)\n\n33. [Event-based Concurrency (Advanced)](./33)\n\n### Persistence\n\n37. [Hard Disk Drives](./37)\n\n38. [Redundant Arrays of Inexpensive Disks (RAIDs)](./38)\n\n39. [Interlude: Files and Directories](./39)\n\n40. [File System Implementation](./40)\n\n41. [Locality and The Fast File System](./41)\n\n42. [Crash Consistency: FSCK and Journaling](./42)\n\n43. [Log-structured File Systems](./43)\n\n44. [Flash-based SSDs](./44)\n\n45. [Data Integrity and Protection](./45)\n\n46. Summary Dialogue on Persistence\n\n47. A Dialogue on Distribution\n\n48. [Distributed Systems](./48)\n\n49. [Sun’s Network File System (NFS)](./49)\n\n50. [The Andrew File System (AFS)](./50)\n\n## License\n\nThis work is licensed under the GPLv3 or any later version.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxxyzz%2Fostep-hw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxxyzz%2Fostep-hw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxxyzz%2Fostep-hw/lists"}