Proceedings of the Tenth ACM SIGPLAN International Conference on Functional Programming 2005
DOI: 10.1145/1086365.1086380
|View full text |Cite
|
Sign up to set email alerts
|

A principled approach to operating system construction in Haskell

Abstract: We describe a monadic interface to low-level hardware features that is a suitable basis for building operating systems in Haskell. The interface includes primitives for controlling memory management hardware, user-mode process execution, and low-level device I/O. The interface enforces memory safety in nearly all circumstances. Its behavior is specified in part by formal assertions written in a programming logic called P-Logic. The interface has been implemented on bare IA32 hardware using the Glasgow Haskell … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
14
0

Year Published

2006
2006
2010
2010

Publication Types

Select...
4
3
2

Relationship

2
7

Authors

Journals

citations
Cited by 44 publications
(14 citation statements)
references
References 10 publications
0
14
0
Order By: Relevance
“…It is not about implementing an operating system in a (purely) functional language. Hallgren et al (2005) did the latter in Haskell in their operating system House, and a number of systems have been implemented in impure functional languages.…”
Section: Related Workmentioning
confidence: 99%
“…It is not about implementing an operating system in a (purely) functional language. Hallgren et al (2005) did the latter in Haskell in their operating system House, and a number of systems have been implemented in impure functional languages.…”
Section: Related Workmentioning
confidence: 99%
“…Another very intriguing one is a compositional (or "virtualizable") concurrency interface [19], in which a scheduler may run a thread that itself is a scheduler... and so on. Another example might be a scheduler for a Haskell-based OS [10] or virtual machine (e.g. HALVM) that needs to give preferential treatment to threads handling urgent interrupts.…”
Section: Setting the Scenementioning
confidence: 99%
“…However, it is still rare to find convincing uses of functional programming in building operating systems. In a recent study, it is demonstrated that Haskell (Peyton Jones et al 1999) can be used to implement an experimental OS called House (Hallgren et al 2005). There are also various attempts to apply language-based techniques for enhancing the reliability of the operating systems.…”
Section: Related Work and Conclusionmentioning
confidence: 99%