Design and Implementation of the MTX Operating System


Book Description

This course-tested textbook describes the design and implementation of operating systems, and applies it to the MTX operating system, a Unix-like system designed for Intel x86 based PCs. Written in an evolutional style, theoretical and practical aspects of operating systems are presented as the design and implementation of a complete operating system is demonstrated. Throughout the text, complete source code and working sample systems are used to exhibit the techniques discussed. The book contains many new materials on the design and use of parallel algorithms in SMP. Complete coverage on booting an operating system is included, as well as, extending the process model to implement threads support in the MTX kernel, an init program for system startup and a sh program for executing user commands. Intended for technically oriented operating systems courses that emphasize both theory and practice, the book is also suitable for self-study.




Operating Systems


Book Description




Operating Systems


Book Description




Embedded and Real-Time Operating Systems


Book Description

This book covers the basic concepts and principles of operating systems, showing how to apply them to the design and implementation of complete operating systems for embedded and real-time systems. It includes all the foundational and background information on ARM architecture, ARM instructions and programming, toolchain for developing programs, virtual machines for software implementation and testing, program execution image, function call conventions, run-time stack usage and link C programs with assembly code. It describes the design and implementation of a complete OS for embedded systems in incremental steps, explaining the design principles and implementation techniques. For Symmetric Multiprocessing (SMP) embedded systems, the author examines the ARM MPcore processors, which include the SCU and GIC for interrupts routing and interprocessor communication and synchronization by Software Generated Interrupts (SGIs).Throughout the book, complete working sample systems demonstrate the design principles and implementation techniques. The content is suitable for advanced-level and graduate students working in software engineering, programming, and systems theory.




Systems Programming in Unix/Linux


Book Description

Covering all the essential components of Unix/Linux, including process management, concurrent programming, timer and time service, file systems and network programming, this textbook emphasizes programming practice in the Unix/Linux environment. Systems Programming in Unix/Linux is intended as a textbook for systems programming courses in technically-oriented Computer Science/Engineering curricula that emphasize both theory and programming practice. The book contains many detailed working example programs with complete source code. It is also suitable for self-study by advanced programmers and computer enthusiasts. Systems programming is an indispensable part of Computer Science/Engineering education. After taking an introductory programming course, this book is meant to further knowledge by detailing how dynamic data structures are used in practice, using programming exercises and programming projects on such topics as C structures, pointers, link lists and trees. This book provides a wide range of knowledge about computer systemsoftware and advanced programming skills, allowing readers to interface with operatingsystem kernel, make efficient use of system resources and develop application software.It also prepares readers with the needed background to pursue advanced studies inComputer Science/Engineering, such as operating systems, embedded systems, databasesystems, data mining, artificial intelligence, computer networks, network security,distributed and parallel computing.




The Design and Implementation of the FreeBSD Operating System


Book Description

As in earlier Addison-Wesley books on the UNIX-based BSD operating system, Kirk McKusick and George Neville-Neil deliver here the most comprehensive, up-to-date, and authoritative technical information on the internal structure of open source FreeBSD. Readers involved in technical and sales support can learn the capabilities and limitations of the system; applications developers can learn effectively and efficiently how to interface to the system; system administrators can learn how to maintain, tune, and configure the system; and systems programmers can learn how to extend, enhance, and interface to the system. The authors provide a concise overview of FreeBSD's design and implementation. Then, while explaining key design decisions, they detail the concepts, data structures, and algorithms used in implementing the systems facilities. As a result, readers can use this book as both a practical reference and an in-depth study of a contemporary, portable, open source operating system. This book: Details the many performance improvements in the virtual memory system Describes the new symmetric multiprocessor support Includes new sections on threads and their scheduling Introduces the new jail facility to ease the hosting of multiple domains Updates information on networking and interprocess communication Already widely used for Internet services and firewalls, high-availability servers, and general timesharing systems, the lean quality of FreeBSD also suits the growing area of embedded systems. Unlike Linux, FreeBSD does not require users to publicize any changes they make to the source code.