Revision 627482182 of "9front" on enwiki

{{multiple issues|
{{original research|date=March 2013}}
{{notability|date=March 2013}}
{{cite check|date=March 2013}}
{{unreliable sources|date=March 2013}}
}}
{{Infobox OS
|name                   = 9front
|logo                   = [[File:9front logo.svg|100px|Logo of Plan 9 from People's Front of Cat-v.org]]
|screenshot             = 
|caption                = 
|developer              = 
|source model           = [[Free and open source software]]
|supported platforms    = [[x86 architecture|x86]] / [[Vx32]], [[ARM architecture|ARM]] {{citation needed|date=March 2013}}
|kernel type            = [[monolithic kernel|Monolithic]]
|ui                     = [[rio (windowing system)|rio]] / [[rc]]
|family                 =
|released               = {{start date and age|2011|6|17}}<ref name="nt-init" />
|marketing target       =
|programmed in          = Dialect of [[ANSI C]]
|prog language          =
|language               = English
|updatemodel            = [[Mercurial]]
|working state          = Current
|license                = [[Lucent Public License]]
|website                = {{URL|http://code.google.com/p/plan9front/}}
}}

'''9front''' is a [[fork (software development)|fork]] of the [[Plan 9 from Bell Labs]] [[operating system]]. The project was started to remedy a perceived lack of devoted development resources inside [[Bell Labs]], and to integrate many changes that were made to Plan 9 independently.{{citation needed|date=March 2013}} It has accumulated various fixes and improvements, including greatly expanded hardware support.

== Description ==
{{main|Plan 9 from Bell Labs}}
9front retains features of Plan 9 from Bell Labs and continues to integrate changes from the original source tree while adding new drivers, features and bugfixes.<ref name="features" /> As with stock Plan 9, 9front is a [[free software]] [[distributed operating system]] that achieves resource generalization by using the [[9P]] protocol to present a consistent interface for accessing local and remote resources as files. It also features private [[namespace]]s,<ref name="namespaces" /> [[union mount]]s, [[procfs|proc]] file system, and native [[unicode]] support throughout the system.

=== Details ===
9front uses the [[a.out]] [[object file]] format<ref>{{cite web|title=A.OUT(6)|url=http://man.cat-v.org/9front/6/a.out|website=9front Manual page archive|publisher=cat-v.org|accessdate=28 September 2014}}</ref> and does not support [[dynamic linking]], like Plan 9, which considering dynamic linking harmful. Plan 9 uses a nonstandard [[x86 calling conventions|x86 calling convention]], in which the caller saves, parameters are pushed onto the stack, and return values are placed in EAX, except for 64bit values and structs, which are written to a pointer that is passed as the first value. It is unknown whether it uses the [[X86_calling_conventions#System_V_AMD64_ABI|System V ADM64 ABI]] for [[x86-64]] like other platforms.

Like Plan 9, 9front does not have symbolic links. Although it has a full-featured kernel, 9front has less than 40 [[system call]]s.<ref name=plan9-syscalls>{{cite web|title=Plan 9 System Calls|url=http://aiju.de/misc/plan9-syscalls|website=aiju.de|accessdate=28 September 2014}}</ref> Plan 9 uses a case sensitive filesystem, unlike OS X's [[HFS Plus|HFS+]] or Window's [[NTFS]]. 9front's source contains 10 minor files with conflicting cases, preventing 9front's Mercurial repository from being cloned or viewed on any case insensitive system. 9front developers refuse to fix this, asserting those wishing to clone 9front should "Get a real computer."<ref>{{cite web|title=Case sensitivity issue in repo|url=https://code.google.com/p/plan9front/issues/detail?id=217|website=plan9front Issues}}</ref>

== History ==
Work on the [[fork (software development)|fork]] began in March 2011.<ref name="began" /> The project was announced under the name "Plan 9 from The People's Front of Cat-v.org",<ref name="nt-init" /> though subsequently it was referred to by the name "9front".<ref name="osnews-init" />

== Development ==
The project is hosted on [[Google Code]];<ref name="plan9front-project">{{cite web|title=plan9front Project Home|url=https://code.google.com/p/plan9front/|accessdate=28 September 2014}}</ref> unlike Bell Labs' distribution, 9front uses [[Mercurial]] for [[source code]] [[revision control]].<ref name=plan9front-checkout>{{cite web|title=Source Checkout – plan9front|url=https://code.google.com/p/plan9front/source/checkout|website=Google Code|accessdate=28 September 2014}}</ref>

== References ==
{{reflist|refs=
<!-- General references (sorted alphabetically) -->
<ref name="namespaces">{{citation |url=http://doc.cat-v.org/plan_9/4th_edition/papers/names |title=The Use of Name Spaces in Plan 9 |first=Rob |last=Pike |accessdate=April 8, 2013}}.</ref>
<ref name="features">{{citation |url=http://code.google.com/p/plan9front/wiki/features |title=New Features |deadurl=no |accessdate=May 14, 2013}}.</ref>
<ref name="began">{{citation |url=http://code.google.com/p/plan9front/source/detail?spec=svn33b7188f31dd99dd8397ee7f12ef8cd8be25e34b&r=eaccc3e8d22668badfdfd7fa12c67f3fbb94c67d |title=9front first commit |accessdate=April 8, 2013}}.</ref>
<ref name="nt-init">{{citation |url=http://ninetimes.cat-v.org/news/2011/06/17/0-9front/ |title=Plan 9 from the People's Front of cat-v.org (9front) |work=NineTimes |date=June 17, 2011 |accessdate=September 13, 2012 }}.</ref>
<ref name="osnews-init">{{citation |url=http://www.osnews.com/story/24957/Plan_9_Forked_Continues_as_9front |title=Plan 9 Forked, Continues as 9front |first=James |last=Robertson |work=[[OSNews]] |date=July 16, 2011 |accessdate=September 13, 2012 }}.</ref>
}}

== Bibliography ==
*{{citation |language=German |url=http://www.golem.de/1107/85015.html |title=Fork des Betriebssystems Plan 9 |trans_title=Fork of Plan 9 operating system |first=Sebastian |last=Grüner |work=[[:de:golem.de|golem.de]] |date=July 18, 2011 |accessdate=September 13, 2012 }}.
*{{citation |language=French |url=http://linuxfr.org/users/sygne/journaux/plan9-9front-le-front-tombe |title=Plan9 & 9Front: Le front tombe! |trans_title=Plan9 & 9Front: The front fell off! |last=Sygne |work=[[linuxfr]] |date=August 16, 2011 |accessdate=September 21, 2012 }}.
*{{citation |language=Russian |url=http://www.opennet.ru/opennews/art.shtml?num=31210 |title=В рамках проекта 9front создан форк операционной системы Plan 9 |trans_title=Plan 9 operating system was forked as a part of 9front project |work=[[OpenNet (website)|OpenNet]] |date=July 17, 2011 |accessdate=September 21, 2012 }}.

== External links ==
*[http://9front.org 9front.org]
*[http://cat-v.org/ Cat-v.org Random Contrarian Insurgent Organization]
*[http://ninetimes.cat-v.org NineTimes Plan 9, Inferno, Unix and Bell Labs operating systems news]
*[https://wiki.archlinux.org/index.php/9vx 9vx on ArchWiki]

[[Category:2011 software]]
[[Category:Computing platforms]]
[[Category:Embedded operating systems]]
[[Category:Plan 9 from Bell Labs]]
[[Category:Real-time operating systems]]
[[Category:Software forks]]