From 8753347792cbecb104394aea7a03df296f726f3a Mon Sep 17 00:00:00 2001 From: Elijah Melton Date: Wed, 15 Jan 2025 00:00:04 -0800 Subject: [PATCH] sync changes: - M "site/categories/algorithm analysis.html" - M site/categories/algorithms.html - M "site/categories/computer science.html" --- site/categories/algorithm analysis.html | 2 +- site/categories/algorithms.html | 2 +- site/categories/computer science.html | 2 +- site/categories/database design.html | 2 +- site/categories/database systems.html | 2 +- site/categories/distributed systems.html | 2 +- site/categories/graph theory.html | 2 +- site/categories/index.html | 2 +- site/categories/mathematics.html | 2 +- .../natural language processing.html | 2 +- site/categories/networking.html | 2 +- site/categories/operations research.html | 2 +- site/categories/research.html | 2 +- site/categories/software engineering.html | 2 +- site/categories/system design.html | 2 +- site/categories/system-design.html | 2 +- site/categories/systems.html | 2 +- site/index.html | 10 ++--- site/systems-research/exokernel.html | 45 +++++++++++++++---- site/tags/acyclic graphs.html | 2 +- site/tags/algorithm-analysis.html | 2 +- site/tags/algorithm.html | 2 +- site/tags/algorithms.html | 2 +- site/tags/approximation.html | 2 +- site/tags/asymptotic notation.html | 2 +- site/tags/batch processing.html | 2 +- site/tags/bipartite graphs.html | 2 +- site/tags/bipartite matching.html | 2 +- site/tags/breadth-first search.html | 2 +- site/tags/caching.html | 2 +- site/tags/classification.html | 2 +- site/tags/column-oriented storage.html | 2 +- site/tags/compatibility.html | 2 +- site/tags/complexity analysis.html | 2 +- site/tags/complexity-analysis.html | 2 +- site/tags/connected components.html | 2 +- site/tags/connected graphs.html | 2 +- site/tags/data analysis.html | 2 +- site/tags/data modeling.html | 2 +- site/tags/data replication.html | 2 +- site/tags/data serialization.html | 2 +- site/tags/data structures.html | 2 +- site/tags/data systems.html | 2 +- site/tags/deep learning.html | 2 +- site/tags/depth first search.html | 2 +- site/tags/depth-first search.html | 2 +- site/tags/design.html | 2 +- site/tags/distributed filesystems.html | 2 +- site/tags/document databases.html | 2 +- site/tags/dynamic-programming.html | 2 +- site/tags/efficiency.html | 2 +- site/tags/encoding formats.html | 2 +- site/tags/end-to-end.html | 2 +- site/tags/etl.html | 2 +- site/tags/exokernel.html | 2 +- site/tags/failover.html | 2 +- site/tags/feedforward.html | 2 +- site/tags/ford-fulkerson algorithm.html | 2 +- site/tags/gale-shapley.html | 2 +- site/tags/graph coloring.html | 2 +- site/tags/graph databases.html | 2 +- site/tags/graph fundamentals.html | 2 +- site/tags/graph properties.html | 2 +- site/tags/graph representation.html | 2 +- site/tags/graph theory.html | 2 +- site/tags/graph traversal.html | 2 +- site/tags/graph-theory.html | 2 +- site/tags/graph-traversal.html | 2 +- site/tags/graph.html | 2 +- site/tags/greedy-algorithms.html | 2 +- site/tags/independent set.html | 2 +- site/tags/index.html | 2 +- site/tags/indexing.html | 2 +- site/tags/induction proofs.html | 2 +- site/tags/induction.html | 2 +- site/tags/internet.html | 2 +- site/tags/interval.html | 2 +- site/tags/leader-follower model.html | 2 +- site/tags/linear programs.html | 2 +- site/tags/linear systems.html | 2 +- site/tags/machine learning.html | 2 +- site/tags/maintainability.html | 2 +- site/tags/mapreduce.html | 2 +- site/tags/matching.html | 2 +- site/tags/max flow min cut.html | 2 +- site/tags/message passing.html | 2 +- site/tags/meta.html | 2 +- .../tags/multinomial logistic regression.html | 2 +- site/tags/natural language processing.html | 2 +- site/tags/networking.html | 2 +- site/tags/neural networks.html | 2 +- site/tags/odd cycles.html | 2 +- site/tags/oltp vs olap.html | 2 +- site/tags/operating systems.html | 2 +- site/tags/optimization.html | 2 +- site/tags/paper.html | 2 +- site/tags/partitioning.html | 2 +- site/tags/performance.html | 2 +- site/tags/pigeonhole principle.html | 2 +- site/tags/problem-solving.html | 2 +- site/tags/proof techniques.html | 2 +- site/tags/query languages.html | 2 +- site/tags/relational databases.html | 2 +- site/tags/reliability.html | 2 +- site/tags/replication logs.html | 2 +- site/tags/research.html | 2 +- site/tags/resource management.html | 2 +- site/tags/review.html | 2 +- site/tags/scalability.html | 2 +- site/tags/scaling.html | 2 +- site/tags/scheduling.html | 2 +- site/tags/schema evolution.html | 2 +- site/tags/set cover.html | 2 +- site/tags/shortest-paths.html | 2 +- site/tags/spanning trees.html | 2 +- site/tags/stable matching.html | 2 +- site/tags/synchronous vs asynchronous.html | 2 +- site/tags/system design.html | 2 +- site/tags/systems.html | 2 +- site/tags/template.html | 2 +- site/tags/time complexity.html | 2 +- site/tags/trees.html | 2 +- site/tags/vertex cover.html | 2 +- systems-research/exokernel.md | 43 +++++++++++------- 124 files changed, 189 insertions(+), 151 deletions(-) diff --git a/site/categories/algorithm analysis.html b/site/categories/algorithm analysis.html index fd5f2a7..2a9161e 100644 --- a/site/categories/algorithm analysis.html +++ b/site/categories/algorithm analysis.html @@ -183,7 +183,7 @@

Category: Algorithm Analysis

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/algorithms.html b/site/categories/algorithms.html index 851ade7..ae71579 100644 --- a/site/categories/algorithms.html +++ b/site/categories/algorithms.html @@ -183,7 +183,7 @@

Category: algorithms

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/computer science.html b/site/categories/computer science.html index 58068ad..ddf187e 100644 --- a/site/categories/computer science.html +++ b/site/categories/computer science.html @@ -183,7 +183,7 @@

Category: Computer Science

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/database design.html b/site/categories/database design.html index 0f0ec73..497f36f 100644 --- a/site/categories/database design.html +++ b/site/categories/database design.html @@ -183,7 +183,7 @@

Category: Database Design

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/database systems.html b/site/categories/database systems.html index 9d32df4..0f63228 100644 --- a/site/categories/database systems.html +++ b/site/categories/database systems.html @@ -183,7 +183,7 @@

Category: Database Systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/distributed systems.html b/site/categories/distributed systems.html index bcd740b..4ab53b6 100644 --- a/site/categories/distributed systems.html +++ b/site/categories/distributed systems.html @@ -183,7 +183,7 @@

Category: Distributed Systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/graph theory.html b/site/categories/graph theory.html index 8dfc3eb..90ff4fb 100644 --- a/site/categories/graph theory.html +++ b/site/categories/graph theory.html @@ -183,7 +183,7 @@

Category: Graph Theory

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/index.html b/site/categories/index.html index 51c1e5b..71b265a 100644 --- a/site/categories/index.html +++ b/site/categories/index.html @@ -182,7 +182,7 @@

Categories

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/mathematics.html b/site/categories/mathematics.html index 21b17d3..6b3544b 100644 --- a/site/categories/mathematics.html +++ b/site/categories/mathematics.html @@ -183,7 +183,7 @@

Category: Mathematics

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/natural language processing.html b/site/categories/natural language processing.html index 32dcd6c..369577b 100644 --- a/site/categories/natural language processing.html +++ b/site/categories/natural language processing.html @@ -183,7 +183,7 @@

Category: natural language processing

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/networking.html b/site/categories/networking.html index e9c6c67..756a4da 100644 --- a/site/categories/networking.html +++ b/site/categories/networking.html @@ -183,7 +183,7 @@

Category: networking

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/operations research.html b/site/categories/operations research.html index 8edd5fe..27a3ada 100644 --- a/site/categories/operations research.html +++ b/site/categories/operations research.html @@ -183,7 +183,7 @@

Category: Operations Research

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/research.html b/site/categories/research.html index 305df94..058851c 100644 --- a/site/categories/research.html +++ b/site/categories/research.html @@ -183,7 +183,7 @@

Category: research

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/software engineering.html b/site/categories/software engineering.html index 76bb5b2..850307d 100644 --- a/site/categories/software engineering.html +++ b/site/categories/software engineering.html @@ -183,7 +183,7 @@

Category: Software Engineering

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/system design.html b/site/categories/system design.html index ccd3410..2ca1ee1 100644 --- a/site/categories/system design.html +++ b/site/categories/system design.html @@ -183,7 +183,7 @@

Category: System Design

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/system-design.html b/site/categories/system-design.html index eb5c14b..211f908 100644 --- a/site/categories/system-design.html +++ b/site/categories/system-design.html @@ -183,7 +183,7 @@

Category: system-design

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/categories/systems.html b/site/categories/systems.html index b966ba9..75d51e9 100644 --- a/site/categories/systems.html +++ b/site/categories/systems.html @@ -183,7 +183,7 @@

Category: systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/index.html b/site/index.html index 60388ec..c718310 100644 --- a/site/index.html +++ b/site/index.html @@ -182,7 +182,7 @@

- Last modified: 2025-01-14 + Last modified: 2025-01-15
@@ -206,14 +206,14 @@

Recent

-

source

-
Exokernel: An Operating System Architecture for Application-Level Resource Management
-
-

What is the Problem?

+

What is the Problem?

+

Operating systems with monolithic kernels prescribe interfaces of key OS abstractions like virtual memory, filesystem, but with these prescriptions come side-effects, particularly in the realm of performance. Applications cannot modify or optimize these abstractions for their specific needs, forcing them to work within the limitations of a "one-size fits all" implementation, which typically prioritizes generality over performance for any specific application.

Summary

+

The paper covers the exokernel architecture, which aims to minimize the "mechanism" role as much as possible, opting to leave implementations to the client, e.g. to the user's choice of library operating system. The key design choice here is to separate resource protection from management, e.g. to provide secure bindings to access a device, without necessarily understanding the use case.

+

The authors were able to realize significant (orders of magnitude) speedups on most primitive tasks compared to a more mature OS (Ultraix) by focusing almost solely on efficiently multiplexing hardware, and by minimizing the number of required system calls during regular operation.

Key Insights

-

-

+

Notable Design Details/Strengths

-

-

+

Limitations/Weaknesses

-

-

+

Summary of Key Results

-

-

+

Open Questions

-

-

+ +

The paper presents a compelling case for application-level resource management through careful kernel design. The significant performance improvements and demonstrated flexibility suggest the approach has merit, though questions remain about complexity and security tradeoffs.

Tags: exokernel, operating systems, resource management
diff --git a/site/tags/acyclic graphs.html b/site/tags/acyclic graphs.html index 0f010a6..47ca6a7 100644 --- a/site/tags/acyclic graphs.html +++ b/site/tags/acyclic graphs.html @@ -183,7 +183,7 @@

Tag: acyclic graphs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/algorithm-analysis.html b/site/tags/algorithm-analysis.html index b4b34cc..dd204f4 100644 --- a/site/tags/algorithm-analysis.html +++ b/site/tags/algorithm-analysis.html @@ -183,7 +183,7 @@

Tag: algorithm-analysis

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/algorithm.html b/site/tags/algorithm.html index a6e2e3a..6b4f6ca 100644 --- a/site/tags/algorithm.html +++ b/site/tags/algorithm.html @@ -183,7 +183,7 @@

Tag: algorithm

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/algorithms.html b/site/tags/algorithms.html index d6bbdec..a3187ce 100644 --- a/site/tags/algorithms.html +++ b/site/tags/algorithms.html @@ -183,7 +183,7 @@

Tag: algorithms

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/approximation.html b/site/tags/approximation.html index 56a9ba1..7ec6d70 100644 --- a/site/tags/approximation.html +++ b/site/tags/approximation.html @@ -183,7 +183,7 @@

Tag: approximation

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/asymptotic notation.html b/site/tags/asymptotic notation.html index bb330af..e94be78 100644 --- a/site/tags/asymptotic notation.html +++ b/site/tags/asymptotic notation.html @@ -183,7 +183,7 @@

Tag: asymptotic notation

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/batch processing.html b/site/tags/batch processing.html index dc6f25b..a1ff8f5 100644 --- a/site/tags/batch processing.html +++ b/site/tags/batch processing.html @@ -183,7 +183,7 @@

Tag: batch processing

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/bipartite graphs.html b/site/tags/bipartite graphs.html index b47c50c..4920c72 100644 --- a/site/tags/bipartite graphs.html +++ b/site/tags/bipartite graphs.html @@ -183,7 +183,7 @@

Tag: bipartite graphs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/bipartite matching.html b/site/tags/bipartite matching.html index 59bc586..4f8e95e 100644 --- a/site/tags/bipartite matching.html +++ b/site/tags/bipartite matching.html @@ -183,7 +183,7 @@

Tag: bipartite matching

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/breadth-first search.html b/site/tags/breadth-first search.html index 368aee2..671ef94 100644 --- a/site/tags/breadth-first search.html +++ b/site/tags/breadth-first search.html @@ -183,7 +183,7 @@

Tag: breadth-first search

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/caching.html b/site/tags/caching.html index 26a11b8..09c3125 100644 --- a/site/tags/caching.html +++ b/site/tags/caching.html @@ -183,7 +183,7 @@

Tag: caching

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/classification.html b/site/tags/classification.html index 92e49f2..f9c85f8 100644 --- a/site/tags/classification.html +++ b/site/tags/classification.html @@ -183,7 +183,7 @@

Tag: classification

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/column-oriented storage.html b/site/tags/column-oriented storage.html index c757240..b250bfb 100644 --- a/site/tags/column-oriented storage.html +++ b/site/tags/column-oriented storage.html @@ -183,7 +183,7 @@

Tag: column-oriented storage

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/compatibility.html b/site/tags/compatibility.html index 048c085..71f4aca 100644 --- a/site/tags/compatibility.html +++ b/site/tags/compatibility.html @@ -183,7 +183,7 @@

Tag: compatibility

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/complexity analysis.html b/site/tags/complexity analysis.html index e080672..3214486 100644 --- a/site/tags/complexity analysis.html +++ b/site/tags/complexity analysis.html @@ -183,7 +183,7 @@

Tag: complexity analysis

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/complexity-analysis.html b/site/tags/complexity-analysis.html index 50d43b4..d39ceda 100644 --- a/site/tags/complexity-analysis.html +++ b/site/tags/complexity-analysis.html @@ -183,7 +183,7 @@

Tag: complexity-analysis

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/connected components.html b/site/tags/connected components.html index 1119da7..d7e54a0 100644 --- a/site/tags/connected components.html +++ b/site/tags/connected components.html @@ -183,7 +183,7 @@

Tag: connected components

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/connected graphs.html b/site/tags/connected graphs.html index f8d0a68..b1a0d43 100644 --- a/site/tags/connected graphs.html +++ b/site/tags/connected graphs.html @@ -183,7 +183,7 @@

Tag: connected graphs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data analysis.html b/site/tags/data analysis.html index c5e4b97..0b0c41a 100644 --- a/site/tags/data analysis.html +++ b/site/tags/data analysis.html @@ -183,7 +183,7 @@

Tag: data analysis

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data modeling.html b/site/tags/data modeling.html index 2ebeade..2c880eb 100644 --- a/site/tags/data modeling.html +++ b/site/tags/data modeling.html @@ -183,7 +183,7 @@

Tag: data modeling

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data replication.html b/site/tags/data replication.html index 9e3ddf6..3b2332e 100644 --- a/site/tags/data replication.html +++ b/site/tags/data replication.html @@ -183,7 +183,7 @@

Tag: data replication

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data serialization.html b/site/tags/data serialization.html index c5a5298..7fb00b8 100644 --- a/site/tags/data serialization.html +++ b/site/tags/data serialization.html @@ -183,7 +183,7 @@

Tag: data serialization

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data structures.html b/site/tags/data structures.html index e91aba7..8393a57 100644 --- a/site/tags/data structures.html +++ b/site/tags/data structures.html @@ -183,7 +183,7 @@

Tag: data structures

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/data systems.html b/site/tags/data systems.html index 6c07f78..f7a2364 100644 --- a/site/tags/data systems.html +++ b/site/tags/data systems.html @@ -183,7 +183,7 @@

Tag: data systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/deep learning.html b/site/tags/deep learning.html index 00cf7b6..9345f7c 100644 --- a/site/tags/deep learning.html +++ b/site/tags/deep learning.html @@ -183,7 +183,7 @@

Tag: deep learning

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/depth first search.html b/site/tags/depth first search.html index 8785e5a..b2f62ac 100644 --- a/site/tags/depth first search.html +++ b/site/tags/depth first search.html @@ -183,7 +183,7 @@

Tag: depth first search

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/depth-first search.html b/site/tags/depth-first search.html index 6b8ffec..cb917dc 100644 --- a/site/tags/depth-first search.html +++ b/site/tags/depth-first search.html @@ -183,7 +183,7 @@

Tag: depth-first search

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/design.html b/site/tags/design.html index 9047f0c..a34ef0e 100644 --- a/site/tags/design.html +++ b/site/tags/design.html @@ -183,7 +183,7 @@

Tag: design

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/distributed filesystems.html b/site/tags/distributed filesystems.html index 6a4e96c..31e2260 100644 --- a/site/tags/distributed filesystems.html +++ b/site/tags/distributed filesystems.html @@ -183,7 +183,7 @@

Tag: distributed filesystems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/document databases.html b/site/tags/document databases.html index e327a9a..a0d5a2e 100644 --- a/site/tags/document databases.html +++ b/site/tags/document databases.html @@ -183,7 +183,7 @@

Tag: document databases

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/dynamic-programming.html b/site/tags/dynamic-programming.html index 5ea9104..fad73ac 100644 --- a/site/tags/dynamic-programming.html +++ b/site/tags/dynamic-programming.html @@ -183,7 +183,7 @@

Tag: dynamic-programming

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/efficiency.html b/site/tags/efficiency.html index 91592d5..ea656a9 100644 --- a/site/tags/efficiency.html +++ b/site/tags/efficiency.html @@ -183,7 +183,7 @@

Tag: efficiency

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/encoding formats.html b/site/tags/encoding formats.html index b2ceae0..fa443cc 100644 --- a/site/tags/encoding formats.html +++ b/site/tags/encoding formats.html @@ -183,7 +183,7 @@

Tag: encoding formats

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/end-to-end.html b/site/tags/end-to-end.html index 9b74a19..30c717b 100644 --- a/site/tags/end-to-end.html +++ b/site/tags/end-to-end.html @@ -183,7 +183,7 @@

Tag: end-to-end

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/etl.html b/site/tags/etl.html index 83e079d..18309db 100644 --- a/site/tags/etl.html +++ b/site/tags/etl.html @@ -183,7 +183,7 @@

Tag: etl

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/exokernel.html b/site/tags/exokernel.html index 3026454..84ee5c5 100644 --- a/site/tags/exokernel.html +++ b/site/tags/exokernel.html @@ -183,7 +183,7 @@

Tag: exokernel

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/failover.html b/site/tags/failover.html index 9d18cc4..215c912 100644 --- a/site/tags/failover.html +++ b/site/tags/failover.html @@ -183,7 +183,7 @@

Tag: failover

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/feedforward.html b/site/tags/feedforward.html index 41a5c62..65ad882 100644 --- a/site/tags/feedforward.html +++ b/site/tags/feedforward.html @@ -183,7 +183,7 @@

Tag: feedforward

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/ford-fulkerson algorithm.html b/site/tags/ford-fulkerson algorithm.html index 07f81b5..f3e21f8 100644 --- a/site/tags/ford-fulkerson algorithm.html +++ b/site/tags/ford-fulkerson algorithm.html @@ -183,7 +183,7 @@

Tag: ford-fulkerson algorithm

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/gale-shapley.html b/site/tags/gale-shapley.html index 7fc7936..55da234 100644 --- a/site/tags/gale-shapley.html +++ b/site/tags/gale-shapley.html @@ -183,7 +183,7 @@

Tag: gale-shapley

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph coloring.html b/site/tags/graph coloring.html index e9291e3..36e82bd 100644 --- a/site/tags/graph coloring.html +++ b/site/tags/graph coloring.html @@ -183,7 +183,7 @@

Tag: graph coloring

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph databases.html b/site/tags/graph databases.html index 066bb7a..38ad6dd 100644 --- a/site/tags/graph databases.html +++ b/site/tags/graph databases.html @@ -183,7 +183,7 @@

Tag: graph databases

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph fundamentals.html b/site/tags/graph fundamentals.html index e6c43e0..363418e 100644 --- a/site/tags/graph fundamentals.html +++ b/site/tags/graph fundamentals.html @@ -183,7 +183,7 @@

Tag: graph fundamentals

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph properties.html b/site/tags/graph properties.html index 91c4765..e005971 100644 --- a/site/tags/graph properties.html +++ b/site/tags/graph properties.html @@ -183,7 +183,7 @@

Tag: graph properties

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph representation.html b/site/tags/graph representation.html index 227c5c2..dff58cf 100644 --- a/site/tags/graph representation.html +++ b/site/tags/graph representation.html @@ -183,7 +183,7 @@

Tag: graph representation

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph theory.html b/site/tags/graph theory.html index 797acef..1d185aa 100644 --- a/site/tags/graph theory.html +++ b/site/tags/graph theory.html @@ -183,7 +183,7 @@

Tag: graph theory

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph traversal.html b/site/tags/graph traversal.html index bc23ebb..10dfd1b 100644 --- a/site/tags/graph traversal.html +++ b/site/tags/graph traversal.html @@ -183,7 +183,7 @@

Tag: graph traversal

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph-theory.html b/site/tags/graph-theory.html index 9afc657..540824d 100644 --- a/site/tags/graph-theory.html +++ b/site/tags/graph-theory.html @@ -183,7 +183,7 @@

Tag: graph-theory

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph-traversal.html b/site/tags/graph-traversal.html index 51a078b..227ae60 100644 --- a/site/tags/graph-traversal.html +++ b/site/tags/graph-traversal.html @@ -183,7 +183,7 @@

Tag: graph-traversal

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/graph.html b/site/tags/graph.html index 577068c..45c6af8 100644 --- a/site/tags/graph.html +++ b/site/tags/graph.html @@ -183,7 +183,7 @@

Tag: graph

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/greedy-algorithms.html b/site/tags/greedy-algorithms.html index 00b29a0..0a5a853 100644 --- a/site/tags/greedy-algorithms.html +++ b/site/tags/greedy-algorithms.html @@ -183,7 +183,7 @@

Tag: greedy-algorithms

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/independent set.html b/site/tags/independent set.html index 5220da6..5cc281a 100644 --- a/site/tags/independent set.html +++ b/site/tags/independent set.html @@ -183,7 +183,7 @@

Tag: independent set

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/index.html b/site/tags/index.html index cedc881..066a9c6 100644 --- a/site/tags/index.html +++ b/site/tags/index.html @@ -182,7 +182,7 @@

Tags

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/indexing.html b/site/tags/indexing.html index 71e2aaf..4a0c93f 100644 --- a/site/tags/indexing.html +++ b/site/tags/indexing.html @@ -183,7 +183,7 @@

Tag: indexing

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/induction proofs.html b/site/tags/induction proofs.html index 7bf11a9..8572e70 100644 --- a/site/tags/induction proofs.html +++ b/site/tags/induction proofs.html @@ -183,7 +183,7 @@

Tag: induction proofs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/induction.html b/site/tags/induction.html index 2d38e56..8bbbd48 100644 --- a/site/tags/induction.html +++ b/site/tags/induction.html @@ -183,7 +183,7 @@

Tag: induction

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/internet.html b/site/tags/internet.html index 6a231c7..4a07af5 100644 --- a/site/tags/internet.html +++ b/site/tags/internet.html @@ -183,7 +183,7 @@

Tag: internet

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/interval.html b/site/tags/interval.html index aab9998..92e7e91 100644 --- a/site/tags/interval.html +++ b/site/tags/interval.html @@ -183,7 +183,7 @@

Tag: interval

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/leader-follower model.html b/site/tags/leader-follower model.html index d6bfd41..a237c85 100644 --- a/site/tags/leader-follower model.html +++ b/site/tags/leader-follower model.html @@ -183,7 +183,7 @@

Tag: leader-follower model

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/linear programs.html b/site/tags/linear programs.html index 0d855ad..3325ea4 100644 --- a/site/tags/linear programs.html +++ b/site/tags/linear programs.html @@ -183,7 +183,7 @@

Tag: linear programs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/linear systems.html b/site/tags/linear systems.html index 2494e6d..34cfa73 100644 --- a/site/tags/linear systems.html +++ b/site/tags/linear systems.html @@ -183,7 +183,7 @@

Tag: linear systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/machine learning.html b/site/tags/machine learning.html index 434fd0e..8bee5c5 100644 --- a/site/tags/machine learning.html +++ b/site/tags/machine learning.html @@ -183,7 +183,7 @@

Tag: machine learning

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/maintainability.html b/site/tags/maintainability.html index a33e9c2..b67672a 100644 --- a/site/tags/maintainability.html +++ b/site/tags/maintainability.html @@ -183,7 +183,7 @@

Tag: maintainability

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/mapreduce.html b/site/tags/mapreduce.html index ac43f1f..c756666 100644 --- a/site/tags/mapreduce.html +++ b/site/tags/mapreduce.html @@ -183,7 +183,7 @@

Tag: mapreduce

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/matching.html b/site/tags/matching.html index f911f49..3a957af 100644 --- a/site/tags/matching.html +++ b/site/tags/matching.html @@ -183,7 +183,7 @@

Tag: matching

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/max flow min cut.html b/site/tags/max flow min cut.html index 1ad1688..ae85e15 100644 --- a/site/tags/max flow min cut.html +++ b/site/tags/max flow min cut.html @@ -183,7 +183,7 @@

Tag: max flow min cut

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/message passing.html b/site/tags/message passing.html index 46cb07e..ff35949 100644 --- a/site/tags/message passing.html +++ b/site/tags/message passing.html @@ -183,7 +183,7 @@

Tag: message passing

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/meta.html b/site/tags/meta.html index 34cbf61..d8c6536 100644 --- a/site/tags/meta.html +++ b/site/tags/meta.html @@ -183,7 +183,7 @@

Tag: meta

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/multinomial logistic regression.html b/site/tags/multinomial logistic regression.html index b7b843c..6a1cff7 100644 --- a/site/tags/multinomial logistic regression.html +++ b/site/tags/multinomial logistic regression.html @@ -183,7 +183,7 @@

Tag: multinomial logistic regression

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/natural language processing.html b/site/tags/natural language processing.html index 123bff9..5bd64a2 100644 --- a/site/tags/natural language processing.html +++ b/site/tags/natural language processing.html @@ -183,7 +183,7 @@

Tag: natural language processing

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/networking.html b/site/tags/networking.html index 3698361..244834e 100644 --- a/site/tags/networking.html +++ b/site/tags/networking.html @@ -183,7 +183,7 @@

Tag: networking

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/neural networks.html b/site/tags/neural networks.html index d8b6c77..fc3ef7f 100644 --- a/site/tags/neural networks.html +++ b/site/tags/neural networks.html @@ -183,7 +183,7 @@

Tag: neural networks

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/odd cycles.html b/site/tags/odd cycles.html index 05783da..868d522 100644 --- a/site/tags/odd cycles.html +++ b/site/tags/odd cycles.html @@ -183,7 +183,7 @@

Tag: odd cycles

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/oltp vs olap.html b/site/tags/oltp vs olap.html index 94fd0a5..aea4408 100644 --- a/site/tags/oltp vs olap.html +++ b/site/tags/oltp vs olap.html @@ -183,7 +183,7 @@

Tag: oltp vs olap

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/operating systems.html b/site/tags/operating systems.html index ec6170f..7686654 100644 --- a/site/tags/operating systems.html +++ b/site/tags/operating systems.html @@ -183,7 +183,7 @@

Tag: operating systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/optimization.html b/site/tags/optimization.html index 9b73bb7..e71f553 100644 --- a/site/tags/optimization.html +++ b/site/tags/optimization.html @@ -183,7 +183,7 @@

Tag: optimization

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/paper.html b/site/tags/paper.html index 45881d3..027e945 100644 --- a/site/tags/paper.html +++ b/site/tags/paper.html @@ -183,7 +183,7 @@

Tag: paper

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/partitioning.html b/site/tags/partitioning.html index a451f52..61a7447 100644 --- a/site/tags/partitioning.html +++ b/site/tags/partitioning.html @@ -183,7 +183,7 @@

Tag: partitioning

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/performance.html b/site/tags/performance.html index 0237476..c9da0ca 100644 --- a/site/tags/performance.html +++ b/site/tags/performance.html @@ -183,7 +183,7 @@

Tag: performance

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/pigeonhole principle.html b/site/tags/pigeonhole principle.html index 1b5195a..7987bc7 100644 --- a/site/tags/pigeonhole principle.html +++ b/site/tags/pigeonhole principle.html @@ -183,7 +183,7 @@

Tag: pigeonhole principle

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/problem-solving.html b/site/tags/problem-solving.html index bd5ad1d..6ca60bf 100644 --- a/site/tags/problem-solving.html +++ b/site/tags/problem-solving.html @@ -183,7 +183,7 @@

Tag: problem-solving

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/proof techniques.html b/site/tags/proof techniques.html index 36d9923..e7b0e19 100644 --- a/site/tags/proof techniques.html +++ b/site/tags/proof techniques.html @@ -183,7 +183,7 @@

Tag: proof techniques

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/query languages.html b/site/tags/query languages.html index f381a94..dc1b1df 100644 --- a/site/tags/query languages.html +++ b/site/tags/query languages.html @@ -183,7 +183,7 @@

Tag: query languages

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/relational databases.html b/site/tags/relational databases.html index 1cb7507..11c5884 100644 --- a/site/tags/relational databases.html +++ b/site/tags/relational databases.html @@ -183,7 +183,7 @@

Tag: relational databases

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/reliability.html b/site/tags/reliability.html index f48ba7d..eff769b 100644 --- a/site/tags/reliability.html +++ b/site/tags/reliability.html @@ -183,7 +183,7 @@

Tag: reliability

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/replication logs.html b/site/tags/replication logs.html index 25f8d64..6258f70 100644 --- a/site/tags/replication logs.html +++ b/site/tags/replication logs.html @@ -183,7 +183,7 @@

Tag: replication logs

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/research.html b/site/tags/research.html index 282efe3..3ebe1c7 100644 --- a/site/tags/research.html +++ b/site/tags/research.html @@ -183,7 +183,7 @@

Tag: research

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/resource management.html b/site/tags/resource management.html index aead459..49448af 100644 --- a/site/tags/resource management.html +++ b/site/tags/resource management.html @@ -183,7 +183,7 @@

Tag: resource management

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/review.html b/site/tags/review.html index 62523aa..f91c30a 100644 --- a/site/tags/review.html +++ b/site/tags/review.html @@ -183,7 +183,7 @@

Tag: review

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/scalability.html b/site/tags/scalability.html index 6a7dad0..e885576 100644 --- a/site/tags/scalability.html +++ b/site/tags/scalability.html @@ -183,7 +183,7 @@

Tag: scalability

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/scaling.html b/site/tags/scaling.html index c7d6987..2ce50a8 100644 --- a/site/tags/scaling.html +++ b/site/tags/scaling.html @@ -183,7 +183,7 @@

Tag: scaling

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/scheduling.html b/site/tags/scheduling.html index e7ad6d6..b3cd4dd 100644 --- a/site/tags/scheduling.html +++ b/site/tags/scheduling.html @@ -183,7 +183,7 @@

Tag: scheduling

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/schema evolution.html b/site/tags/schema evolution.html index e4f627f..43ddfd7 100644 --- a/site/tags/schema evolution.html +++ b/site/tags/schema evolution.html @@ -183,7 +183,7 @@

Tag: schema evolution

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/set cover.html b/site/tags/set cover.html index 968574a..cda0adf 100644 --- a/site/tags/set cover.html +++ b/site/tags/set cover.html @@ -183,7 +183,7 @@

Tag: set cover

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/shortest-paths.html b/site/tags/shortest-paths.html index e69cc6e..96d63fb 100644 --- a/site/tags/shortest-paths.html +++ b/site/tags/shortest-paths.html @@ -183,7 +183,7 @@

Tag: shortest-paths

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/spanning trees.html b/site/tags/spanning trees.html index 1c906dc..bcd5b96 100644 --- a/site/tags/spanning trees.html +++ b/site/tags/spanning trees.html @@ -183,7 +183,7 @@

Tag: spanning trees

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/stable matching.html b/site/tags/stable matching.html index 5ae3671..fe692da 100644 --- a/site/tags/stable matching.html +++ b/site/tags/stable matching.html @@ -183,7 +183,7 @@

Tag: stable matching

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/synchronous vs asynchronous.html b/site/tags/synchronous vs asynchronous.html index 2778259..fa43c55 100644 --- a/site/tags/synchronous vs asynchronous.html +++ b/site/tags/synchronous vs asynchronous.html @@ -183,7 +183,7 @@

Tag: synchronous vs asynchronous

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/system design.html b/site/tags/system design.html index 243b2fc..c22164a 100644 --- a/site/tags/system design.html +++ b/site/tags/system design.html @@ -183,7 +183,7 @@

Tag: system design

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/systems.html b/site/tags/systems.html index 2fb0689..168ac2b 100644 --- a/site/tags/systems.html +++ b/site/tags/systems.html @@ -183,7 +183,7 @@

Tag: systems

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/template.html b/site/tags/template.html index 2a08c43..d3bc432 100644 --- a/site/tags/template.html +++ b/site/tags/template.html @@ -183,7 +183,7 @@

Tag: template

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/time complexity.html b/site/tags/time complexity.html index 2825824..75a7536 100644 --- a/site/tags/time complexity.html +++ b/site/tags/time complexity.html @@ -183,7 +183,7 @@

Tag: time complexity

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/trees.html b/site/tags/trees.html index 11bd759..a1bbb3e 100644 --- a/site/tags/trees.html +++ b/site/tags/trees.html @@ -183,7 +183,7 @@

Tag: trees

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/site/tags/vertex cover.html b/site/tags/vertex cover.html index 75e64ca..ac5640a 100644 --- a/site/tags/vertex cover.html +++ b/site/tags/vertex cover.html @@ -183,7 +183,7 @@

Tag: vertex cover

- Last modified: 2025-01-14 + Last modified: 2025-01-15
diff --git a/systems-research/exokernel.md b/systems-research/exokernel.md index 055ea58..a5eb1bc 100644 --- a/systems-research/exokernel.md +++ b/systems-research/exokernel.md @@ -5,39 +5,50 @@ tags: operating systems, exokernel, resource management description: Paper review for the classic exokernel paper --- -# [source](https://example.com) - -###### Exokernel: An Operating System Architecture for Application-Level Resource Management - ---- - ### What is the Problem? +Operating systems with monolithic kernels prescribe interfaces of key OS abstractions like virtual memory, filesystem, but with these prescriptions come side-effects, particularly in the realm of performance. Applications cannot modify or optimize these abstractions for their specific needs, forcing them to work within the limitations of a "one-size fits all" implementation, which typically prioritizes generality over performance for any specific application. ### Summary +The paper covers the exokernel architecture, which aims to minimize the "mechanism" role as much as possible, opting to leave implementations to the client, e.g. to the user's choice of library operating system. The key design choice here is to separate resource protection from management, e.g. to provide secure bindings to access a device, without necessarily understanding the use case. + +The authors were able to realize significant (orders of magnitude) speedups on most primitive tasks compared to a more mature OS (Ultraix) by focusing almost solely on efficiently multiplexing hardware, and by minimizing the number of required system calls during regular operation. ### Key Insights -- -- +- Separating resource protection from resource management allows for more flexible and efficient OS abstractions +- Low-level hardware interfaces can be safely exposed to applications through secure bindings +- Library operating systems can implement traditional OS abstractions more efficiently by specializing them for specific applications +- The "end-to-end argument" applies to OS design - applications know better than the OS how to manage resources for their needs ### Notable Design Details/Strengths -- -- +- Secure bindings provide protection while allowing direct hardware access +- Visible resource revocation lets applications participate in resource management +- Download code into kernel (e.g. packet filters) for efficient resource management +- Library OS approach maintains backward compatibility while enabling customization +- Simple kernel focused only on protection leads to better performance ### Limitations/Weaknesses -- -- +- Increased complexity for application developers who must now implement OS functionality +- Potential for fragmentation with many custom library OS implementations +- May be harder to reason about system-wide properties with distributed control +- Some hardware may not support secure exposure to applications ### Summary of Key Results -- -- +- Basic operations 10-100x faster than traditional OS (Ultrix) +- Exception handling 5x faster than previous best implementation +- Application-level virtual memory and IPC 5-40x faster than kernel implementations +- Demonstrated flexibility through custom schedulers, page tables, and IPC mechanisms ### Open Questions -- -- +- How to balance flexibility vs complexity for application developers? +- What is the right division of functionality between exokernel and library OS? +- How does the approach scale to modern hardware/software complexity? +- Can the security properties be maintained with untrusted library OSes? + +The paper presents a compelling case for application-level resource management through careful kernel design. The significant performance improvements and demonstrated flexibility suggest the approach has merit, though questions remain about complexity and security tradeoffs. \ No newline at end of file