本书讲述了一个64位多核操作系统的自制过程。此操作系统自制过程是先从虚拟平台构筑起一个基础框架,随后再将基础框架移植到物理平台中进行升级、完善与优化。为了凸显64位多核操作系统的特点,物理平台选用搭载着IntelCore-i7处理器的笔记本电脑。与此同时,本书还将Linux内核的源码精髓、诸多官方白皮书以及多款常用协议...
本书讲述了一个64位多核操作系统的自制过程。此操作系统自制过程是先从虚拟平台构筑起一个基础框架,随后再将基础框架移植到物理平台中进行升级、完善与优化。为了凸显64位多核操作系统的特点,物理平台选用搭载着Intel Core-i7处理器的笔记本电脑。与此同时,本书还将Linux内核的源码精髓、诸多官方白皮书以及多款常用协议...
本书讲述了一个64位多核操作系统的自制过程。此操作系统自制过程是先从虚拟平台构筑起一个基础框架,随后再将基础框架移植到物理平台中进行升级、完善与优化。为了凸显64位多核操作系统的特点,物理平台选用搭载着IntelCore-i7处理器的笔记本电脑。与此同时,本书还将Linux内核的源码精髓、诸多官方白皮书以及多款常用协议...
64位显卡驱动的实现位于本章代码20/Print.h与20/Print.hpp中,其实现思路与32位操作系统一致,但有以下区别: 0xb8xxx的虚拟地址是0xffff8000000b8xxx 64位模式下可以使用movsq/stosq指令,一次操作8字节 printHex函数,以及printf的%x用于打印64位无符号整数,可用于打印指针 20.4 64位内存管理系统 想要实现内存管理系统...
想要实现任务,就需要先安装好TSS与TSS描述符。 64位TSS如下图所示: 如图所示,64位TSS的大小不变,还是104字节。64位CPU淘汰了硬件任务切换和数据段寄存器,因此,64位TSS的组成与32位TSS完全不同,其已不具备保存寄存器的功能,其中的大部分字节用于中断栈表(Interrupt Stack Table,IST),这个功能在我们的操作系统中没...
x86_64=1,level=6, mmx=1, sep=1, simd=avx512, aes=1, movbe=1, xsave=1,apic=x2apic,sha=1,movbe=1,adx=1,xsaveopt=1,avx_f16c=1,avx_fma=1,bmi=bmi2,1g_pages=1,pcid=1,fsgsbase=1,smep=1,smap=1,mwait=1,vmx=1 cpuid: family=6, model=0x1a, stepping=5, vendor_string="...
操作系统的组成结构 1.2 操作系统的组成结构一款功能完备、方便易用的操作系统,是由一套庞大的结构组成的,图1-1描述了操作系统的整体结构。从图1-1可以看出,操作系统由内核层与应用层两部分组成。内核层主要由引导启动、内存管理、异常/中断处理、进程管理、设备驱动、文件系统等模块组成,而系统API库和应用程序则属...
鉴于操作系统是与硬件设备紧密相连的软件程序,所以操作系统的编写自然会涉及软件和硬件两个方面。 1. 硬件方面 首先,我们要根据硬件电路掌握处理器与外围设备的电路组成,通俗一点说,就是处理器和外围设备是怎么连接的。当掌握电路组成后,进而可以知道处理器如何控制外围设备,以及采用何种方式与它们通信。对于ARM这类片上...
操作系统内存设计实现寄存器计算机体系 一个64位操作系统的设计与实现第一章本文概述1.1随着计算机技术的不断发展,操作系统在计算机领域中扮演着越来越重要的角色。操作系统是一种基础性软件,它负责管理计算机硬件资源、软件资源和用户作业等底层工作,是计算机系统的核心组成部分。随着计算机硬件的不断提升和软件需求的不断...
本书讲述了一个64位多核操作系统的自制过程。此操作系统自制过程是先从虚拟平台构筑起一个基础框架,随后再将基础框架移植到物理平台中进行升级、完善与优化。为了凸显64位多核操作系统的特点,物理平台选用搭载着Intel Core-i7处理器的笔记本电脑。与此同时,本书还将Linux