000 03309nam a22004215i 4500
001 978-1-84628-967-5
003 DE-He213
005 20161121230613.0
007 cr nn 008mamaa
008 100301s2007 xxk| s |||| 0|eng d
020 _a9781846289675
_9978-1-84628-967-5
024 7 _a10.1007/978-1-84628-967-5
_2doi
050 4 _aQA76.758
072 7 _aUMZ
_2bicssc
072 7 _aUL
_2bicssc
072 7 _aCOM051230
_2bisacsh
082 0 4 _a005.1
_223
100 1 _aCraig, Iain D.
_eauthor.
245 1 0 _aFormal Refinement for Operating System Kernels
_h[electronic resource] /
_cby Iain D. Craig.
264 1 _aLondon :
_bSpringer London,
_c2007.
300 _aXV, 332 p.
_bonline resource.
336 _atext
_btxt
_2rdacontent
337 _acomputer
_bc
_2rdamedia
338 _aonline resource
_bcr
_2rdacarrier
347 _atext file
_bPDF
_2rda
505 0 _aIntroduction -- Reasons for Selecting the Examples -- Refinement Method -- Code Production -- Organisation of this Book -- Relationship to Other Work -- The Simple Kernel’s Organisation -- A Simple Kernel -- Types -- Hardware -- The Process Table.-Process Queue -- Priority Queue -- The Scheduler -- Semaphores -- Semaphore Table -- Synchronous Messages -- The Clock -- Sleepers.-User Interface -- The Separation Kernel.-Basic Architecture -- Extending the Architecture -- Summary -- An Overview of the Formal Specification -- A Separation Kernel -- Basic Types -- Hardware Issues -- Security Exits and Return Values -- The Process Table -- Process Queues -- The Scheduler -- Storage Pools -- Raw Storage -- Message Queues -- Kernel Interface-User Processes -- Devices-Trusted Code -- Process Interface to the Kernel -- Final Thoughts -- Closing Thoughts -- References -- List of Definitions.
520 _aThe kernel of any operating system is its most critical component. The remainder of the system depends upon a correctly functioning and reliable kernel for its operation. The purpose of this book is to show that the formal specification of kernels can be followed by a completely formal refinement process that leads to the extraction of executable code. The formal refinement process ensures that the code meets the specification in a precise sense. Two kernels are specified and refined. The first is small and of the kind often used in embedded and real-time systems. It closely resembles the one modelled in our Formal Models of Operating System Kernels. The second is a Separation Kernel, a microkernel architecture devised for cryptographic and other secure applications. Both kernels are refined to the point at which executable code can be extracted. Apart from documenting the process, including proofs, this book also shows how refinement of a realistically sized specification can be undertaken. Iain Craig is a Chartered Fellow of the BCS and has a PhD in Computer Science.
650 0 _aComputer science.
650 0 _aSoftware engineering.
650 1 4 _aComputer Science.
650 2 4 _aSoftware Engineering/Programming and Operating Systems.
710 2 _aSpringerLink (Online service)
773 0 _tSpringer eBooks
776 0 8 _iPrinted edition:
_z9781846289668
856 4 0 _uhttp://dx.doi.org/10.1007/978-1-84628-967-5
912 _aZDB-2-SCS
950 _aComputer Science (Springer-11645)
999 _c501236
_d501236