Pintos
{{Short description|Simple instructional operating system}}
{{For|the Philippine corn tamale|Binaki}}
{{primary sources|date=February 2015}}
{{Infobox software
| name = Pintos
| title = Pintos
| caption = An instructional operating system
| author = Ben Pfaff
| developer = Ben Pfaff
| released = {{Start date and age|2004}}
| programming language = C
| operating system =
| platform = x86
| size =
| language = English
| license = BSD-like
| website = {{URL|https://web.stanford.edu/class/cs140/projects/pintos/pintos_1.html}}
}}
Pintos is a simple instructional operating system framework for the x86 instruction set architecture. It supports kernel threads, loading and running user programs, and a file system, but it implements all of these in a very simple way.
Pintos is currently used by multiple institutions, including UT Austin,{{Cite web |title=Pintos Projects: Table of Contents |url=https://www.cs.utexas.edu/~ans/classes/cs439/projects/pintos/WWW/pintos.html |access-date=2022-09-13 |website=/www.cs.utexas.edu}} UC Berkeley,{{Cite web | title=CS 162 — Spring 2025 | url=https://cs162.eecs.berkeley.edu/ | access-date=2025-03-28 | website=cs162.eecs.berkeley.edu}} UC Santa Cruz,{{Cite web | title=Andrew R. Quinn {{!}} CSE 134 | url=https://arquinn.github.io/teaching/cse134_spring24_syllabus/ | access-date=2025-03-28 | website=arquinn.github.io}} University at Buffalo and Imperial College London,{{Cite web|title=OS Lab Project|url=http://www.imperial.ac.uk/engineering/departments/computing/current-students/course-admin/noticeboards/second-year/labs/os-lab-project/|access-date=2020-12-01|website=Imperial College London|language=en-GB}} as an academic aid in Operating Systems class curriculums.
History
It was created at Stanford University by Ben Pfaff in 2004.{{Cite web|url=http://www.stanford.edu/class/cs140/projects/pintos/pintos.pdf|title=Pintos, by Ben Pfaff, PDF}} It originated as a replacement for Not Another Completely Heuristic Operating System (Nachos), a similar system originally developed at UC Berkeley by Thomas E. Anderson, and was designed along similar lines.{{cite web |title=Pintos Projects: Introduction |url=http://www.stanford.edu/class/cs140/projects/pintos/pintos_1.html |accessdate=2007-04-17}}
= Comparison to Nachos =
Like Nachos, Pintos is intended to introduce undergraduates to concepts in operating system design and implementation by requiring them to implement significant portions of a real operating system, including thread and memory management and file system access. Pintos also teaches students valuable debugging skills.
Unlike Nachos, Pintos can run on actual x86 hardware, though it is often run atop an x86 emulator, such as Bochs or QEMU. Nachos, by contrast, runs as a user process on a host operating system, and targets the MIPS architecture (Nachos code must run atop a MIPS simulator).{{Cite book |last= |first= |url=https://books.google.com/books?id=1lVeyvOY-MsC&pg=PA36&dq=Nachos+MIPS+simulator&hl=en&sa=X&ved=2ahUKEwj8172E9sGLAxVaQjABHavYMdEQ6AF6BAgEEAM#v=onepage&q=Nachos%20MIPS%20simulator&f=false |title=AUUGN |date=June 1994 |publisher=AUUG, Inc. |language=en}} Pintos and its accompanying assignments are also written in the programming language C instead of C++ (used for original Nachos) or Java (used for Nachos 5.0j).
See also
References
{{Reflist}}
External links
- {{Official website|www.stanford.edu/class/cs140/projects/pintos/pintos.html}}
Category:Free software operating systems
Category:X86 operating systems
Category:Educational operating systems
Category:Software using the BSD license
{{operating-system-stub}}