9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] Pre-ANSI C
@ 2015-09-11  8:46 Ramakrishnan Muthukrishnan
  2015-09-11 22:48 ` Aleksandar Kuktin
  2015-09-13  3:51 ` Enrico Weigelt, metux IT consult
  0 siblings, 2 replies; 6+ messages in thread
From: Ramakrishnan Muthukrishnan @ 2015-09-11  8:46 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Not really about Plan 9, but I found this blog post and the comments
(there is even a comment from Rob Pike) very interesting and thought of
sharing here.

<https://spin0r.wordpress.com/2014/11/21/kr-c/>

--
  Ramakrishnan



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] Pre-ANSI C
  2015-09-11  8:46 [9fans] Pre-ANSI C Ramakrishnan Muthukrishnan
@ 2015-09-11 22:48 ` Aleksandar Kuktin
  2015-09-13 11:04   ` Brantley Coile
  2015-09-13  3:51 ` Enrico Weigelt, metux IT consult
  1 sibling, 1 reply; 6+ messages in thread
From: Aleksandar Kuktin @ 2015-09-11 22:48 UTC (permalink / raw)
  To: 9fans

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>On Fri, 11 Sep 2015 14:16:49 +0530
>Ramakrishnan Muthukrishnan <ram@rkrishnan.org> wrote:
>
> Not really about Plan 9, but I found this blog post and the comments
> (there is even a comment from Rob Pike) very interesting and thought
> of sharing here.
> 
> <https://spin0r.wordpress.com/2014/11/21/kr-c/>
> 

Which reminds me - I should read Plan 9's source. At least the kernel.

Any pointer about where to start? I tried with the boot code, but it
jumped around a lot and I lost track of it.

- -- 
Svi moji e-mailovi su kriptografski potpisani. Proverite ih.
All of my e-mails are cryptographically signed. Verify them.
- --
You don't need an AI for a robot uprising.
Humans will do just fine.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.15 (GNU/Linux)

iQIcBAEBAgAGBQJV81o+AAoJEKa4cgqNx31/A4AP/A6rhnkPiAcJBL6cZthN6+s8
E3lJhHkK+QeWRJGfPuI/8wsCMGoNg7bv236oBmYK5SNIAt1htYeWPHwlPSrjMa6r
tjaOthZrdOBrULaXtskM26V/kCJY3r6ZNoqNxJe6USTGuh7EHRis0Id6ZBwIalUi
cTN56LjFnJHH0wLaAaXWZ/e9oSyvNxHPopwVoshF0m0gjO2wQ1UOKjNQT05YVD/L
9e5INAl7M0Y8vc/ks4jlGPhJTOhVNhzQtnc6+E1sqWAhLEEPs9vSaIo2Yv7IkxJ1
CSsRbt+TAmQeM6NKbB992Luag/sGi/xzJHmk3S0iSUb4OQAMzrWzvbE3pUEZV/Mx
1XxSB5XsqDuhJekJ3HAJzKqTxfDGlfAHLoq2ntWL5VTap1QhnuxuJrdttORJwlYk
iz11WCQhkhptkuaBTXweRIZVUue/2RjIMzyonm0zam9f12BKTgF7sfbKTZEhrsPC
/ubb0kQyXLW/u3oxPM3P7VCIN+l6GzCB4VMeQpWbLSB1ZFacds+SAnWH79nCX2+o
l9UDr43GHoGYc50WYeN8gVq+yZt0mMW1n33/R+4ltUiqBbYfd1Bll+QA7d0zBecO
/k7vBh+B18XMwRGQkczvvlE7FAuxHjc7PEx8HnmIydyFU23sP966lbt5CczwIMA7
epJusWqdEqmXP22vm/++
=tRzZ
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] Pre-ANSI C
  2015-09-11  8:46 [9fans] Pre-ANSI C Ramakrishnan Muthukrishnan
  2015-09-11 22:48 ` Aleksandar Kuktin
@ 2015-09-13  3:51 ` Enrico Weigelt, metux IT consult
  1 sibling, 0 replies; 6+ messages in thread
From: Enrico Weigelt, metux IT consult @ 2015-09-13  3:51 UTC (permalink / raw)
  To: 9fans

On 11.09.2015 10:46, Ramakrishnan Muthukrishnan wrote:

> <https://spin0r.wordpress.com/2014/11/21/kr-c/>

"In those days, a directory in UNIX was a file that contains a list of
file names and some indication of where they are located (p. 169)."

... reminds me on something ;-)



-- 

mit freundlichen Grüßen
--
Enrico Weigelt,
metux IT consulting
+49-151-27565287



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] Pre-ANSI C
  2015-09-11 22:48 ` Aleksandar Kuktin
@ 2015-09-13 11:04   ` Brantley Coile
  2015-09-14 16:52     ` Aleksandar Kuktin
  0 siblings, 1 reply; 6+ messages in thread
From: Brantley Coile @ 2015-09-13 11:04 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Nemo's book is excellent. He has one on the user space aide of plan 9 as well. http://lsub.org/who/nemo/9.intro.pdf. 

I would suggest first reading the file portdat.h and dat.h and getting some idea of the structures used in the system. Seeing the data structures first is essential to understanding Bell Labs code. Then learn the syscall path and start by walking through some of the familiar calls, adding new ones until you exhaust them. There aren't many. By that time you'll understand how the system works. You then can walk through the boot strap procedure.

Device drivers, dev*.c, are fun to read but for drivers interfacing to real hardware you'll need the vendor's hardware manual to really understand them. The devsd and devether with its many "mini-port" drivers are a bit of a world to themselves. The IP stack more so.

I would also highly recommend Ken file server as well. It's smaller in scope and has many of the same concepts as the later kernel. I would study as early a version as you can find. 

Not the only order to learn the code but one that has worked for me. 

Brantley

Sent from my iPad

> On Sep 11, 2015, at 6:48 PM, Aleksandar Kuktin <akuktin@gmail.com> wrote:
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
>> On Fri, 11 Sep 2015 14:16:49 +0530
>> Ramakrishnan Muthukrishnan <ram@rkrishnan.org> wrote:
>> 
>> Not really about Plan 9, but I found this blog post and the comments
>> (there is even a comment from Rob Pike) very interesting and thought
>> of sharing here.
>> 
>> <https://spin0r.wordpress.com/2014/11/21/kr-c/>
> 
> Which reminds me - I should read Plan 9's source. At least the kernel.
> 
> Any pointer about where to start? I tried with the boot code, but it
> jumped around a lot and I lost track of it.
> 
> - -- 
> Svi moji e-mailovi su kriptografski potpisani. Proverite ih.
> All of my e-mails are cryptographically signed. Verify them.
> - --
> You don't need an AI for a robot uprising.
> Humans will do just fine.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.15 (GNU/Linux)
> 
> iQIcBAEBAgAGBQJV81o+AAoJEKa4cgqNx31/A4AP/A6rhnkPiAcJBL6cZthN6+s8
> E3lJhHkK+QeWRJGfPuI/8wsCMGoNg7bv236oBmYK5SNIAt1htYeWPHwlPSrjMa6r
> tjaOthZrdOBrULaXtskM26V/kCJY3r6ZNoqNxJe6USTGuh7EHRis0Id6ZBwIalUi
> cTN56LjFnJHH0wLaAaXWZ/e9oSyvNxHPopwVoshF0m0gjO2wQ1UOKjNQT05YVD/L
> 9e5INAl7M0Y8vc/ks4jlGPhJTOhVNhzQtnc6+E1sqWAhLEEPs9vSaIo2Yv7IkxJ1
> CSsRbt+TAmQeM6NKbB992Luag/sGi/xzJHmk3S0iSUb4OQAMzrWzvbE3pUEZV/Mx
> 1XxSB5XsqDuhJekJ3HAJzKqTxfDGlfAHLoq2ntWL5VTap1QhnuxuJrdttORJwlYk
> iz11WCQhkhptkuaBTXweRIZVUue/2RjIMzyonm0zam9f12BKTgF7sfbKTZEhrsPC
> /ubb0kQyXLW/u3oxPM3P7VCIN+l6GzCB4VMeQpWbLSB1ZFacds+SAnWH79nCX2+o
> l9UDr43GHoGYc50WYeN8gVq+yZt0mMW1n33/R+4ltUiqBbYfd1Bll+QA7d0zBecO
> /k7vBh+B18XMwRGQkczvvlE7FAuxHjc7PEx8HnmIydyFU23sP966lbt5CczwIMA7
> epJusWqdEqmXP22vm/++
> =tRzZ
> -----END PGP SIGNATURE-----



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] Pre-ANSI C
  2015-09-13 11:04   ` Brantley Coile
@ 2015-09-14 16:52     ` Aleksandar Kuktin
  0 siblings, 0 replies; 6+ messages in thread
From: Aleksandar Kuktin @ 2015-09-14 16:52 UTC (permalink / raw)
  To: 9fans

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>On Sun, 13 Sep 2015 07:04:23 -0400
>Brantley Coile <brantleycoile@me.com> wrote:

> Not the only order to learn the code but one that has worked for me. 

Many thanks to everyone for the suggestions. I'm reading the Notes on
the kernel (and realizing why people say x86 is a horrible
architecture). Now only to get QEMU up and running...

- -- 
Svi moji e-mailovi su kriptografski potpisani. Proverite ih.
All of my e-mails are cryptographically signed. Verify them.
- --
You don't need an AI for a robot uprising.
Humans will do just fine.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.15 (GNU/Linux)

iQIcBAEBAgAGBQJV9vtdAAoJEKa4cgqNx31/QJEQAICILOAZCPmFXYkepSOJnCqI
oSsL8q2gj84twAgU3ctk1dK3znxxHASRm5fbcQLv9enr3i6ZFC6EmhLzuXeCGyXi
AihDn2d6JGS+zON2yur9970kLPFY0b0P0TI7SEZ/3KMsk7C56DgOnUnISSWx5AJl
NN903O4JOlV5LwJAAdZ7EChQnwzqaTzjAPD9/qrnzmgyApjsTVQxgXjUF/s36i4A
REalL0q2HZdYqATVT23K70clKVpoIpxQwkipnsbw7Y5+PFnoQkBa9x6yHRGnVplK
1ywVkZvvweq+SAJ5IMuEFjcFqczEUHJoffVxuB++ouIak3m4ZGgA4l8Yz1qj7b4Q
dSxWt+3JeLuNczTGTNRhOGkKmBruG82IGmuA5Fn7fbUBcEV3P3PB3FeSR9MbMIg3
GkI+wICvimEQ26omKxqQuXzSC+2gVoCQ9/pKBwIvX2bzYSjab9oGwAbKRRQ4CXge
eaHCfO2aaCAjnbl/aiUFiLmFuxGSEwzD7pORo76Tj9R8roukFlZBPtcb0VvcWmcz
4Tc/sXan6uPhmyeA3B2B8ehpbNBEyFWvWKR2vjkivGUdz1YlIpvidtmI99mOVxTW
eItGT+UMX49dD1gZeejO1b/nI9UGkS7n9UF5tDEi4h0zTGIF8HvjI50gZfyFe9pG
xqPSzacUqoqJkTGljcno
=baqD
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] Pre-ANSI C
@ 2015-09-11 22:54 sl
  0 siblings, 0 replies; 6+ messages in thread
From: sl @ 2015-09-11 22:54 UTC (permalink / raw)
  To: 9fans

> Which reminds me - I should read Plan 9's source. At least the kernel.
>
> Any pointer about where to start? I tried with the boot code, but it
> jumped around a lot and I lost track of it.

Francisco Ballestros (nemo) wrote a guide to the 3rd Edition kernel
source code:

	http://plan9.stanleylieber.com/_books/comp/plan9/Notes.On.The.Plan.9.3rd.Edition.Kernel.Source.pdf


It's a bit outdated at this point, but is still helpful to understand
what's going on.

sl



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-09-14 16:52 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-11  8:46 [9fans] Pre-ANSI C Ramakrishnan Muthukrishnan
2015-09-11 22:48 ` Aleksandar Kuktin
2015-09-13 11:04   ` Brantley Coile
2015-09-14 16:52     ` Aleksandar Kuktin
2015-09-13  3:51 ` Enrico Weigelt, metux IT consult
2015-09-11 22:54 sl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).