diff options
Diffstat (limited to 'documentation/research/operating_system.md')
-rw-r--r-- | documentation/research/operating_system.md | 281 |
1 files changed, 0 insertions, 281 deletions
diff --git a/documentation/research/operating_system.md b/documentation/research/operating_system.md deleted file mode 100644 index 82943f024..000000000 --- a/documentation/research/operating_system.md +++ /dev/null @@ -1,281 +0,0 @@ -# Code-generation - -1. [It’s Time for a Modern Synthesis Kernel](https://blog.regehr.org/archives/1676) - -# Intepreter - -1. [Jitk: A Trustworthy In-Kernel Interpreter Infrastructure](https://css.csail.mit.edu/jitk/) - -# Architecture - -1. [TabulaROSA: Tabular Operating System Architecture for Massively Parallel Heterogeneous Compute Engines](https://arxiv.org/abs/1807.05308) - -# Graphics | Rendering - -1. [Text Rendering Hates You](https://gankra.github.io/blah/text-hates-you/) -1. https://fuchsia.googlesource.com/garnet/+/master/docs/ui/scenic.md - -# Exemplar - -## Operating system - -1. [CLOSOS: Specication of a Lisp operating system.](http://metamodular.com/lispos.pdf) -1. [CLOSOS: Specication of a Lisp operating system.](http://metamodular.com/closos.pdf) -1. https://medium.com/@jasonyuan/introducing-mercury-os-f4de45a04289 -1. http://lsneff.me/why-nebulet/ ||| https://github.com/nebulet/nebulet -1. http://exposnitc.github.io/index.html -1. https://www.gocosmos.org/ -1. http://www.microkernel.info/ -1. http://webosose.org/ -1. https://ostree.readthedocs.io/en/latest/manual/introduction/ -1. http://www.helenos.org/ -1. http://nixos.org/ -1. https://github.com/klange/toaruos -1. http://greenteapress.com/thinkos/ -1. http://kolibrios.org/en/ -1. http://menuetos.net/ -1. https://sailfishos.org/ -1. http://www.barrelfish.org/index.html -1. https://samypesse.gitbooks.io/how-to-create-an-operating-system/ -1. https://lumina-desktop.org/ -1. 2015 01 GNU Guix The Emacs of Distros &&& https://www.youtube.com/watch?v=AzebnJkfdvM -1. The Synthesis Kernel &&& https://www.usenix.org/legacy/publications/compsystems/1988/win_pu.pdf -1. http://zoo.cs.yale.edu/classes/cs422/pios -1. https://fuchsia.googlesource.com/docs/+/HEAD/book.md -1. https://externos.io/ -1. http://www.shadowdefender.com/ -1. https://pureos.net/ -1. http://progmp.net/ -1. http://www.uruk.org/emu/Taos.html -1. http://www.dickpountain.co.uk/home/computing/byte-articles/the-taos-operating-system-1991?hn -1. https://www.redox-os.org/ -1. https://system76.com/pop -1. http://habitatchronicles.com/2017/05/what-are-capabilities/ &&& ( Start reading where it says "Embedded systems" ) -1. http://genode.org/documentation/general-overview/index -1. https://camlistore.org/ -1. https://opensource.com/article/17/10/flintos -1. https://sortix.org/ -1. https://www.kickstarter.com/projects/xiki/xikihub-the-social-command-line -1. https://www.tockos.org/ -1. http://hydros-project.org/ -1. Twizzler: An Operating System for Next-Generation Memory Hierarchies &&& https://www.ssrc.ucsc.edu/Papers/ssrctr-17-01.pdf -1. http://www.includeos.org/ -1. https://harvey-os.org/ -1. https://github.com/jvburnes/node9 -1. http://unleashed-os.org/ -1. https://github.com/GreenteaOS/Greentea -1. https://xinu.cs.purdue.edu/ -1. https://browsix.org/ -1. https://github.com/frzb/coinboot -1. http://www.jbox.dk/sanos/index.htm -1. https://www.osrtos.com/ -1. [CLOSOS Specification of a Lisp operating system.](http://metamodular.com/lispos.pdf) -1. http://metamodular.com/Common-Lisp/lispos.html -1. http://riot-os.org/ -1. http://www.scs.stanford.edu/histar/ -1. http://sel4.systems/ - -## Unikernel - -1. https://hermitcore.org/2018/06/06/A-Rust-based-Unikernel/ -1. http://unikernel.org/ -1. https://xenproject.org/linux-foundation/80-developers/207-unikraft.html -1. https://fourlightyears.blogspot.com/2018/08/what-i-could-not-undiscover-about.html -1. https://mirage.io/ -1. [Unikernels: No Longer an Academic Exercise](http://250bpm.com/blog:138) -1. https://github.com/hermitcore/libhermit-rs -1. https://next.redhat.com/2018/11/14/ukl-a-unikernel-based-on-linux/ -1. https://github.com/joekoolade/JOE -1. https://ssrg-vt.github.io/hermitux/ -1. https://nanovms.com/dev/tutorials/running-forth-unikernels -1. [Unikernels: The Next Stage of Linux’s Dominance](https://www.cs.bu.edu/~jappavoo/Resources/Papers/unikernel-hotos19.pdf) -1. https://grapheneproject.io/ -1. https://ops.city/ - -## Microkernel - -1. [Snap: a Microkernel Approach to Host Networking](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/36f0f9b41e969a00d75da7693571e988996c9f4c.pdf) - -## Real-time - -1. https://en.wikipedia.org/wiki/VxWorks - -# Reference - -1. [Rethinking files](https://www.devever.net/~hl/objectworld) -1. [Writing an OS in Rust (Second Edition)](https://os.phil-opp.com/) -1. https://archiveos.org/ -1. https://lwn.net/Articles/615809/ -1. https://www.tweag.io/posts/2018-03-15-bazel-nix.html -1. Type-Safe Operating System Abstractions &&& https://www.cs.dartmouth.edu/~trdata/reports/TR2004-526.pdf -1. https://www.hillelwayne.com/post/nix/ -1. https://github.com/pervognsen/bitwise -1. True parallelism, with no concept of threads - Alfred Bratterud - Meeting C++ 2017 &&& https://www.youtube.com/watch?v=9IXivbSA_5A -1. http://ccl.cse.nd.edu/software/parrot/ -1. http://greenteapress.com/wp/think-os/ -1. https://gustavus.edu/mcs/max/os-book/ -1. https://sywtwaosir.wordpress.com/ -1. https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/ -1. https://en.wikipedia.org/wiki/WinFS -1. An alternative device-tree source language &&& https://lwn.net/SubscriberLink/730217/556c557e8a3bf0a0/ -1. https://joshondesign.com/2017/08/18/idealos_essay -1. https://tuhdo.github.io/os01/ -1. https://www.usenix.org/legacy/events/usenix03/tech/full_papers/padioleau/padioleau_html/index.html -1. https://medium.com/@ifesdjeen/on-disk-io-part-3-lsm-trees-8b2da218496f -1. https://medium.com/@ifesdjeen/on-disk-storage-part-4-b-trees-30791060741 -1. http://fare.tunes.org/LispM.html -1. http://queue.acm.org/detail.cfm?id=1317400 -1. The Art of Unix Programming &&& http://www.catb.org/esr/writings/taoup/html/index.html -1. https://shivambharuka.wordpress.com/2017/10/25/arrakis-the-operating-system-is-the-control-plane/ -1. [Arrakis: The Operating System is the Control Plane](https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-peter_simon.pdf) -1. https://sortix.org/os-test/ -1. https://existentialtype.wordpress.com/2016/07/11/pclsring-in-semantics/ -1. Database/Operating System Co-Design &&& https://www.research-collection.ethz.ch/handle/20.500.11850/136 -1. YOW! Lambda Jam 2017 Brian McKenna - Nix for Functional Systems &&& https://www.youtube.com/watch?v=mIxtBVKo7JE -1. [Mouse Programming with libgpm](https://www.linuxjournal.com/article/4600) -1. https://developer.apple.com/library/archive/documentation/DeviceDrivers/Conceptual/WritingDeviceDriver/CPluPlusRuntime/CPlusPlusRuntime.html -1. https://yarchive.net/comp/linux/everything_is_file.html -1. [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/) -1. http://www.drdobbs.com/parallel/booting-an-intel-architecture-system-par/232300699 -1. [The Jury Is In: Monolithic OS Design Is Flawed: Microkernel-based Designs Improve Security](http://ts.data61.csiro.au/publications/csiro_full_text/Biggs_LH_18.pdf) -1. https://medium.com/@enkiv2/composability-homogeneity-and-language-based-systems-fb00e2c2458 -1. [Write your own Operating System](https://www.youtube.com/playlist?list=PLHh55M_Kq4OApWScZyPl5HhgsTJS9MZ6M) -1. [Light-weight Contexts: An OS Abstraction for Safety and Performance](https://people.mpi-sws.org/~druschel/publications/osdi16.pdf) -1. https://augustl.com/blog/2014/an_immutable_operating_system/ - -# Higher-Order - -1. https://www.yoctoproject.org/ - -# Formats - -1. http://iokit.racing/machotricks.pdf - -# Error-handling - -1. http://joeduffyblog.com/2016/02/07/the-error-model/ -1. https://code.fb.com/production-engineering/open-sourcing-oomd-a-new-approach-to-handling-ooms/ -1. https://os.phil-opp.com/double-fault-exceptions/ - -# Tools - -1. https://osquery.io/ -1. https://github.com/facebook/osquery - -# Shell - -1. [Magritte: A Language for Pipe-Based Programming](http://files.jneen.net/academic/thesis.pdf) -1. https://latacora.singles/2018/06/21/loud-subshells.html -1. https://github.com/ipetkov/conch-runtime -1. https://www.spinellis.gr/sw/dgsh/ - -# File-system - -1. https://medium.com/@siddontang/use-fuse-to-inject-failure-to-i-o-deb5f2e7800a -1. [Spiffy: Enabling File-System Aware Storage Applications](https://www.usenix.org/conference/fast18/presentation/sun) -1. https://github.com/bindh3x/libnicko -1. https://github.com/floyernick/fleep-py -1. https://brauner.github.io/2018/08/05/unprivileged-file-capabilities.html -1. http://louwrentius.com/the-sorry-state-of-cow-file-systems.html -1. https://www.notthewizard.com/2014/06/17/are-files-appends-really-atomic/ -1. https://medium.com/datadriveninvestor/writing-your-own-file-system-is-not-as-hard-as-you-may-think-aa4af09329cd -1. http://www.betrfs.org/ -1. https://docs.microsoft.com/en-us/windows/desktop/projfs/projected-file-system -1. [The Lustre Storage Architecture](https://arxiv.org/abs/1903.01955) - -# Shared libraries | Dynamic Loading - -1. https://amir.rachum.com/blog/2016/09/17/shared-libraries/ -1. https://www.kix.in/2008/06/19/an-alternative-to-shared-libraries/ -1. https://www.akkadia.org/drepper/no_static_linking.html -1. https://amir.rachum.com/blog/2016/09/17/shared-libraries/ - -# Packages - -1. [Piotr Gaczkowski - Nix -- the functional package manager - Lambda Days 2020](https://www.youtube.com/watch?v=6AvwC25fd_U) -1. https://snapcraft.io/ -1. https://code.fb.com/data-infrastructure/xars-a-more-efficient-open-source-system-for-self-contained-executables/ - -# System Calls - -1. [1001 Ways of Implementing a System Call](https://x86.lol/generic/2019/07/04/kernel-entry.html) -1. https://eli.thegreenplace.net/2018/basics-of-futexes/ -1. [FlexSC: Flexible System Call Scheduling with Exception-Less System Calls](https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Soares.pdf) - -# Security - -1. https://en.wikipedia.org/wiki/Reference_monitor -1. [FINE-CFI: Fine-grained Control-Flow Integrity for Operating System Kernels](http://www.cs.wayne.edu/fengwei/paper/fine-cfi-tifs18.pdf) -1. https://unsat.cs.washington.edu/projects/hyperkernel/ -1. [Capsicum](https://oshogbo.vexillium.org/blog/57/) -1. [OS-level Attacks and Defenses: from Software to Hardware-based Exploits](http://tuprints.ulb.tu-darmstadt.de/8482/1/gens_diss.pdf) -1. [Time Protection: The Missing OS Abstraction](https://ts.data61.csiro.au/publications/csiro_full_text//Ge_YCH_19.pdf) -1. [Light-weight Contexts: An OS Abstraction for Safety and Performance](https://www.usenix.org/system/files/conference/osdi16/osdi16-litton.pdf) -1. https://natsys-lab.blogspot.com/2019/05/goodbye-fast-system-calls.html - -# Driver - -1. https://blogs.windows.com/buildingapps/2018/08/15/introducing-driver-module-framework/#J6CWEbpcH0OwgWbP.97 -1. [Toward Compositional Verification of Interruptible OS Kernels and Device Drivers](http://flint.cs.yale.edu/flint/publications/device-journal.pdf) -1. [Writing Network Drivers in Haskell](https://www.net.in.tum.de/fileadmin/bibtex/publications/theses/2019-ixy-haskell.pdf) - -# Networking - -1. [Computer Networks: A Systems Approach](https://github.com/SystemsApproach/book) - -# Kernel - -1. [A new kernel polling interface](https://lwn.net/Articles/743714/) -1. [Composing Abstractions using the null-Kernel](https://people.mpi-sws.org/~dg/papers/hotosxvii.pdf) - -# I/O - -1. [The block I/O latency controller](https://lwn.net/Articles/758963/) -1. [I/O Is Faster Than the CPU – Let’s Partition Resources and Eliminate (Most) OS Abstractions](https://penberg.org/parakernel-hotos19.pdf) - -# Init System - -1. https://davmac.wordpress.com/2018/10/26/on-the-vagaries-of-init-systems/ - -# Homogeneous Operating Systems - -1. https://ecc-comp.blogspot.com/2014/12/homogeneous-operating-systems-are-better.html - -# Update System - -1. https://theupdateframework.github.io/overview.html - -# Signal - -1. http://delyan.me/code-review-signals/ - -# Daemon - -1. https://chaoticlab.io/c/c++/unix/2018/10/01/daemonize.html - -# Memory - -1. [Memory Systems and Memory-Centric Computing Systems](http://people.inf.ethz.ch/omutlu/acaces2018.html) -1. https://en.wikipedia.org/wiki/Page_replacement_algorithm -1. [Compress Objects, Not Cache Lines:An Object-Based Compressed Memory Hierarchy](https://people.csail.mit.edu/poantsai/papers/2019.zippads.asplos.pdf) - -# Hardware - -1. [There's No Such Thing as a General-purpose Processor](https://queue.acm.org/detail.cfm?id=2687011) - -# Reliability - -1. [CuriOS: Improving Reliability through Operating System Structure](http://people.cs.ksu.edu/~danielwang/Investigation/System_Security/curios.pdf) - -# Booting | Bootstrapping - -1. https://puri.sm/posts/pureboot-the-high-security-boot-process/ - -# Virtualization - -1. [virtio: Towards a De-Facto Standard For Virtual I/O Devices](https://www.ozlabs.org/~rusty/virtio-spec/virtio-paper.pdf) - -# Separation kernel - -1. [High-Assurance Separation Kernels: A Survey on Formal Methods](https://arxiv.org/abs/1701.01535) - |