About site: Software/Operating Systems/Microkernel - Sartoris Microkernel Tutorial
Return to Computers also Computers
  About site: http://sartoris-microkernel.blogspot.com/2006/06/0.html

Title: Software/Operating Systems/Microkernel - Sartoris Microkernel Tutorial Explains about making a policy-free microkernel; multipart series.
Nevum_Solutions_Corp A global company that develops and implements software solutions for workforce management and productivity control, including access control, time and attendance, comprehensive labor reporting, and co

OpenBSD Growing article, with links to many related topics. [Wikipedia]

Clairvoyance_Corporation Develops a suite of component technologies for unstructured text management and analysis. Features overviews of technologies and research initiatives, with company background.

MyMailout Offers pay services to create, send and manage email newsletters.

APL_2001 The ACM page regarding the 2001 conference.

Web_Engine_Network Offers design, graphics, programming, maintenance, hosting, and domain services.


  Alexa statistic for http://sartoris-microkernel.blogspot.com/2006/06/0.html





Get your Google PageRank






Please visit: http://sartoris-microkernel.blogspot.com/2006/06/0.html


  Related sites for http://sartoris-microkernel.blogspot.com/2006/06/0.html
    SeedWiki A Wiki Farm where basic Wikis are free. Offers plugins that allow applications and web sites to be built on a Wiki Framework.
    Larry_Wall_Email Perl creator's brief critique of REBOL. (October 30, 1998)
    Rexx/Trans Rexx API translation library
    Searchspace Eables the real-time application of business analytics, and automatically analyze, process and prioritize actions in the business environment
    Thompson,_Henry_S_ University of Edinburgh - Computational linguistics, data-intensive linguistics, language corpora and corpus management, SGML, XML, XSL and DSSSL.
    Effnet_AB Maker of high-speed routers and firewalls.
    luminous_shadows_-_fantasy_character_design The collected character designs and animations of johnathan darkly, featuring fantasy, science fiction and contemporary virtual actors.
    News_Gizmo An ambitious freely available modification to INN's nnrpd, for stopping abuse from your own users. It also includes more advanced user authentication features than are provided by the stock nnrpd.
    Vertster Conversion rate marketing tool. Measure and simultaneously test your internet marketing effectiveness.
    GNU_Project_-_Free_Software_Foundation_(FSF) Listing of the GNU software packages.
    Hybrid-Mods Hybrid-Mods provides reviews and tutorials for computer enthusiasts.
    GhostLog Invisible surveillance tool that records every keystroke to an encrypted log file. Product specifications, screenshots, and downloads.
    Google_AJAXSLT Google's AJAXSLT is an implementation of XSL-T in JavaScript for AJAX applications. Includes links for downloading.
    Yatuc Free URL service.
    SIGKDD__Knowledge_Discovery_in_Data_and_Data_Mining Encourages data-mining research, market standards and education.
    DiscBurn CD and DVD disc replication or duplication, printing and business card CDs.
    Mathemania Is a virtual work-surface, which allows you to solve algebraic problems with the ease of drag and drop manipulations. [Win95/98/Me/NT/2000]
    AtomEnabled_org Atom is a way to read and write information on the web, and is considered a competitor/alternate format to RSs. Basic information about the format as well as on software and services which use or c
    Optic_Empire Offer web hosting, domain name registration and web design services for individuals and businesses. Based in New South Wales, Australia.
    Latent_Motion,_LLC Provides web design, programming, and search engine marketing. Located in Brookline, MA, USA.
This is websites2007.org cache of m/ as retrieved on 2008.08.20 websites2007.org's cache is the snapshot that we took of the page as we crawled the web. The page may have changed since that time.
Sartoris Microkernel Tutorial /* ----------------------------------------------- Blogger Template Style Name: Rounders 3 Designer: Douglas Bowman URL: www.stopdesign.com Date: 27 Feb 2004 ----------------------------------------------- */ body { background:#123; margin:0; padding:20px 10px; text-align:center; font:x-small/1.5em "Trebuchet MS",Verdana,Arial,Sans-serif; color:#ccc; font-size/* */:/**/small; font-size: /**/small; } /* Page Structure ----------------------------------------------- */ /* The images which help create rounded corners depend on the following widths and measurements. If you want to change these measurements, the images will also need to change. */ @media all { #content { width:740px; margin:0 auto; text-align:left; } #main { width:485px; float:left; background:#eec url("http://www.blogblog.com/rounders3/corners_main_bot.gif") no-repeat left bottom; margin:15px 0 0; padding:0 0 10px; color:#333; font-size:97%; line-height:1.5em; } #main2 { float:left; width:100%; background:url("http://www.blogblog.com/rounders3/corners_main_top.gif") no-repeat left top; padding:10px 0 0; } #sidebar { width:240px; float:right; margin:15px 0 0; font-size:97%; line-height:1.5em; } } @media handheld { #content { width:90%; } #main { width:100%; float:none; background:#eec; } #main2 { float:none; width:100%; background:none; } #sidebar { width:100%; float:none; } } /* Links ----------------------------------------------- */ a:link { color:#9db; } a:visited { color:#798; } a:hover { color:#fff; } a img { border-width:0; } #main a:link { color:#347; } #main a:visited { color:#666; } #main a:hover { color:#68a } /* Blog Header ----------------------------------------------- */ @media all { #header { background:#357 url("http://www.blogblog.com/rounders3/corners_cap_bot.gif") no-repeat left bottom; margin:0 0 0; padding:0 0 8px; color:#fff; } #header div { background:url("http://www.blogblog.com/rounders3/corners_cap_top.gif") no-repeat left top; padding:8px 15px 0; } } @media handheld { #header { background:#357; } #header div { background:none; } } #blog-title { margin:0; padding:10px 30px 5px; font-size:200%; line-height:1.2em; } #blog-title a { text-decoration:none; color:#fff; } #description { margin:0; padding:5px 30px 10px; font-size:94%; line-height:1.5em; color:#abc; } /* Posts ----------------------------------------------- */ .date-header { margin:0 28px 0 43px; font-size:85%; line-height:2em; text-transform:uppercase; letter-spacing:.2em; color:#586; } .post { margin:.3em 0 25px; padding:0 13px; border:1px dotted #bb9; border-width:1px 0; } .post-title { margin:0; font-size:135%; line-height:1.5em; background:url("http://www.blogblog.com/rounders3/icon_arrow.gif") no-repeat 10px .5em; display:block; border:1px dotted #bb9; border-width:0 1px 1px; padding:2px 14px 2px 29px; color:#333; } #main a.title-link, .post-title strong { text-decoration:none; display:block; } #main a.title-link:hover { background-color:#fff; color:#000; } .post-body { border:1px dotted #bb9; border-width:0 1px 1px; border-bottom-color:#eec; padding:10px 14px 1px 29px; } html>body .post-body { border-bottom-width:0; } .post p { margin:0 0 .75em; } p.post-footer { background:#fff; margin:0; padding:2px 14px 2px 29px; border:1px dotted #bb9; border-bottom:1px solid #eee; font-size:100%; line-height:1.5em; color:#666; text-align:right; } html>body p.post-footer { border-bottom-color:transparent; } p.post-footer em { display:block; float:left; text-align:left; font-style:normal; } a.comment-link { /* IE5.0/Win doesn't apply padding to inline elements, so we hide these two declarations from it */ background/* */:/**/url("http://www.blogblog.com/rounders3/icon_comment.gif") no-repeat 0 45%; padding-left:14px; } html>body a.comment-link { /* Respecified, for IE5/Mac's benefit */ background:url("http://www.blogblog.com/rounders3/icon_comment.gif") no-repeat 0 45%; padding-left:14px; } .post img { margin:0 0 5px 0; padding:4px; border:1px solid #586; } blockquote { margin:.75em 0; border:1px dotted #596; border-width:1px 0; padding:5px 15px; } .post blockquote p { margin:.5em 0; } /* Comments ----------------------------------------------- */ #comments { margin:-25px 13px 0; border:1px dotted #6a7; border-width:0 1px 1px; padding:20px 0 15px 0; } #comments h4 { margin:0 0 10px; padding:0 14px 2px 29px; border-bottom:1px dotted #6a7; font-size:120%; line-height:1.4em; color:#333; } #comments-block { margin:0 15px 0 9px; } .comment-data { background:url("http://www.blogblog.com/rounders3/icon_comment.gif") no-repeat 2px .3em; margin:.5em 0; padding:0 0 0 20px; color:#666; } .comment-poster { font-weight:bold; } .comment-body { margin:0 0 1.25em; padding:0 0 0 20px; } .comment-body p { margin:0 0 .5em; } .comment-timestamp { margin:0 0 .5em; padding:0 0 .75em 20px; color:#fff; } .comment-timestamp a:link { color:#fff; } .deleted-comment { font-style:italic; color:gray; } /* Profile ----------------------------------------------- */ @media all { #profile-container { background:#586 url("http://www.blogblog.com/rounders3/corners_prof_bot.gif") no-repeat left bottom; margin:0 0 15px; padding:0 0 10px; color:#fff; } #profile-container h2 { background:url("http://www.blogblog.com/rounders3/corners_prof_top.gif") no-repeat left top; padding:10px 15px .2em; margin:0; border-width:0; font-size:115%; line-height:1.5em; color:#fff; } } @media handheld { #profile-container { background:#586; } #profile-container h2 { background:none; } } .profile-datablock { margin:0 15px .5em; border-top:1px dotted #7a8; padding-top:8px; } .profile-img {display:inline;} .profile-img img { float:left; margin:0 10px 5px 0; border:4px solid #bec; } .profile-data strong { display:block; } #profile-container p { margin:0 15px .5em; } #profile-container .profile-textblock { clear:left; } #profile-container a { color:#fff; } .profile-link a { background:url("http://www.blogblog.com/rounders3/icon_profile.gif") no-repeat 0 .1em; padding-left:15px; font-weight:bold; } ul.profile-datablock { list-style-type:none; } /* Sidebar Boxes ----------------------------------------------- */ @media all { .box { background:#234 url("http://www.blogblog.com/rounders3/corners_side_top.gif") no-repeat left top; margin:0 0 15px; padding:10px 0 0; color:#abc; } .box2 { background:url("http://www.blogblog.com/rounders3/corners_side_bot.gif") no-repeat left bottom; padding:0 13px 8px; } .abox { background:#234 url("http://www.blogblog.com/rounders3/corners_side_top.gif") no-repeat left top; margin:0 0 7px; padding:7px 0 0; color:#abc; } .abox2 { background:url("http://www.blogblog.com/rounders3/corners_side_bot.gif") no-repeat left bottom; padding:0 5px 8px; } .dbox { margin:0 0 0px; padding:0px 0 0; } .dbox2 { padding:0 45px 0px; } } @media handheld { .box { background:#234; } .box2 { background:none; } .abox { background:#234; } .abox2 { background:none; } .dbox { background:#234; } .dbox2 { background:none; } } .sidebar-title { margin:0; padding:0 0 .2em; border-bottom:1px dotted #456; font-size:115%; line-height:1.5em; color:#abc; } .box ul { margin:.5em 0 1.25em; padding:0 0px; list-style:none; } .box ul li { background:url("http://www.blogblog.com/rounders3/icon_arrow_sm.gif") no-repeat 2px .25em; margin:0; padding:0 0 3px 16px; margin-bottom:3px; border-bottom:1px dotted #345; line-height:1.4em; } .box p { margin:0 0 .6em; } /* Footer ----------------------------------------------- */ #footer { clear:both; margin:0; padding:15px 0 0; } @media all { #footer div { background:#357 url("http://www.blogblog.com/rounders3/corners_cap_top.gif") no-repeat left top; padding:8px 0 0; color:#fff; } #footer div div { background:url("http://www.blogblog.com/rounders3/corners_cap_bot.gif") no-repeat left bottom; padding:0 15px 8px; } } @media handheld { #footer div { background:#357; } #footer div div { background:none; } } #footer hr {display:none;} #footer p {margin:0;} #footer a {color:#fff;} @import url(http://www.blogger.com/css/navbar/classic.css);div.b-mobile {display:none;} function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener("load", function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } }

Sartoris Microkernel Tutorial

An introduction to operating systems paratrooping.

Wednesday, June 14, 2006

0. IntroductionDid you ever feel the urge to start from scratch? But then, what basic concepts should an operating system be based upon? Well, experimenting with system software is not that easy. One has to go back and forth between two different mindsets. Half of your brains need to visualize how all the constituents of a potentially very complex system are going to interact and make sure every possible scenario has been contemplated by the proposed design. This sort of model checking tour de force has to be intertwined, if the system is meant to work eventually, with the actual system programming that will bring it to life - reading obscure hardware documentation and doing hexadecimal arithmetic in your head included. Building an operating system can be a fascinating adventure. A few years back, I got mixed up in the design of something dubbed a policy-free microkernel, named Sartoris after a little crazy character in a William Faulkner novel. This small piece of software implements a handful of useful but very basic (and perhaps intrinsecally uninteresting) hardware-oriented operations - not an operating system per se, but a lot of simple and useful abstractions, including the ability to easily boot and initialize a personal computer. It was designed with freedom of choice in mind: it should have enough features to allow the arbitrary construction of a full operating system in a (rather) unprivileged environment, but nothing more. In this vein, the Sartoris microkernel works as a very thin library. For example, it is easy to context-switch from one thread to another, to manage address spaces or to handle interrupts. But that's about it. There is no default way to execute a program, no multiprogramming, nada. Plainly put, on boot the system doesn't handle any interrupt - not even the timer. In this sense, Sartoris differs from what is traditionally considered a microkernel, and this is the reason why I think it is a nice little tool to learn about operating systems. At a technical level, many things have been taken care of (but all the code is there, and is really short in case you want to take a look). But conceptually, everything is still as virginal as an acre of rainforest deep into the Brazilian jungle. Well, to be fair, we may have taken out a tree or two, but only because we really had to. What follows is meant to be a hands-on introduction to system programming, using C and the Sartoris microkernel. If you just want to take a look at Sartoris and its API, you may prefer to download this document instead. Knowledge of the C programming language is assumed. If you are not familiar with C, but still feel like going on, an excelent reference - and a classic as well - is the Kernighan & Ritchie book. This tutorial should have you writing, compiling and booting several little programs presto. In order to do this, you will need access to a *nix system and development tools. Linux is what we use over here, but if you are a windows user, Cygwin will do as well. Go to next section. posted by santi @ 8:40 PM   0 comments 0 Comments: Post a Comment << Home 0. Introduction 1. Hello World! 2. The tools 3. Calling the kernel 3. Storing files 4. Threads and interrupts 5. Tasks & messages 6. Multitasking Join the discussion group.   _uacct = "UA-221933-2"; urchinTracker();
 

Explains

about

making

a

policy-free

microkernel;

multipart

series.

http://sartoris-microkernel.blogspot.com/2006/06/0.html

Sartoris Microkernel Tutorial 2008 August

dvd rental

dvd


Explains about making a policy-free microkernel; multipart series.

Rules




© 2008 Internet Explorer 5+ or Netscape 6+

Recommended Sites: 1. Arts - Business - Computers - Games - Health - Home - Kids and Teens - News - Recreation - Reference - Regional - Science - Shopping - Society - Sports - World Miss Gallery - Top Anime Hentai - DVD rental by mail - Myspace Layouts - Celeb Gossip - Secured Loan - Car Insurance - Mobile Phone
2008-08-20 18:21:17

Copyright 2005, 2006 by Webmaster
Websites is cool :) 173Kredyt Hipoteczny - Hotel Genf - Sklep Komputerowy - Warsaw Hotels - Underfloor Heating