{"id":29,"date":"2015-12-31T08:42:28","date_gmt":"2015-12-31T13:42:28","guid":{"rendered":"http:\/\/blog.unixcat.org\/?p=29"},"modified":"2016-09-01T14:19:44","modified_gmt":"2016-09-01T18:19:44","slug":"treehouse-a-beginners-os-on-x86","status":"publish","type":"post","link":"http:\/\/blog.unixcat.org\/?p=29","title":{"rendered":"Treehouse: A Beginner&#8217;s OS on x86"},"content":{"rendered":"<p>I am currently trying to learn how to write an operating system, from scratch, for the fun of it. I have a few ARM boards, but I also want to get my hands on the Intel Edison, which is a 32-bit 500Mhz dual core Atom SoC designed for the internet of thingamajigs. It&#8217;ll be a while before I even get something usable running, but I&#8217;ve started to write a little kernel called <a href=\"https:\/\/github.com\/nurh\/treehouse\">Treehouse<\/a> which you can follow the progress of on <a href=\"https:\/\/github.com\/nurh\">my Github page<\/a>.<\/p>\n<p>I don&#8217;t have a lot of time to work on it, so progress will be slow, but I would like to document what I do on this blog, mainly for my own records but if you&#8217;re interested you can try it out too. Currently you can run it within Qemu or Bochs, and it boots up and prints a little banner. You&#8217;ll need a baremetal 32-bit x86 compiler or cross-compiler (if you&#8217;re on something else, like amd64) to compile it.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I am currently trying to learn how to write an operating system, from scratch, for the fun of it. I have a few ARM boards, but I also want to get my hands on the Intel Edison, which is a 32-bit 500Mhz dual core Atom SoC designed for the internet of thingamajigs. It&#8217;ll be a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2,3],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/posts\/29"}],"collection":[{"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=29"}],"version-history":[{"count":1,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions"}],"predecessor-version":[{"id":30,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions\/30"}],"wp:attachment":[{"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=29"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=29"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.unixcat.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}