zoukankan      html  css  js  c++  java
  • 老李手把手之操作系统(1)

    老李手把手之操作系统(1)

    本章的目的主要是构建开发环境

    以下是本章需要安装的软件包及需要了解的概念,请自行 baidu、google、bing

    • linux(ubuntu)
    • terminal
    • compiler
    • emulator
    • nasm
    • qemu

    我建议大家使用 ubuntu 16.04,因为这样可以保持和我的一致...

    概念略解

    linux

    我们就是要做一个类似 linux 的操作系统,ubuntu 16.04 是其中的一个发行版

    terminal

    linux 没有启动图形界面的时候,用户就只能通过 terminal 来使用操作系统;有图形界面时,用户可以通过 GUI 来控制操作系统

    compiler

    编译器,将高级语言编译成机器码,这里面水很深

    emulator

    模拟器,是指主要透过硬件或软件使得一台计算机系统在行为上类似于另一台计算机系统。

    说白了,就是为了咱们实验方便,不见得咱们还真买一台 8086 的机器,再弄块软盘,然后把程序烧制进软盘,然后再通电运行?

    换句话说,大家肯定就清楚了。。。在 pc 装个 ps 的模拟器,就可以玩 ps 游戏了...

    nasm

    Netwide Assembler,基于 intel x86 架构的汇编与反汇编的工具,开源!

    大家可以想问下 compiler 与 assembler 有什么区别么~?

    引入 nasm 的目的是,编写操作系统的引导代码,这部分代码很难用高级语言代劳,因为涉及到寄存器的操作...

    建议有条件的同学先把《80x86汇编语言程序设计》给学了...

    qemu

    一个流行的开源模拟器,我们的操作系统最终就运行在 qemu 虚拟出来的一台计算机上

    安装环境

    安装 ubuntu 16.04

    https://www.jianshu.com/p/21c627999826

    安装 nasm

    安装命令: apt-get install nasm

    验证下是否 OK:

    (venv) root@ubuntu:/home/lihao/codes/os-tutorial-cn# nasm -h
    usage: nasm [-@ response file] [-o outfile] [-f format] [-l listfile]
                [options...] [--] filename
        or nasm -v (or --v) for version info
    
        -t          assemble in SciTech TASM compatible mode
    
    

    安装 qemu

    安装命令:apt-get install qemu

    验证下是否 OK,执行 qemu-system-x86_64

  • 相关阅读:
    BZOJ3413: 匹配
    BZOJ5084: hashit
    BZOJ2281: [Sdoi2011]黑白棋
    BZOJ4808: 马
    BZOJ3208: 花神的秒题计划Ⅰ
    BZOJ3714: [PA2014]Kuglarz
    BZOJ2102: [Usaco2010 Dec]The Trough Game
    JZOJ6676. 【2020.06.01省选模拟】查拉图斯特拉如是说 (第二类斯特林数+多项式多点求值)
    LOJ #3217. 「PA 2019」Desant(状压dp)
    JZOJ 5154.【NOI2017模拟6.20】树形图求和 (矩阵树定理)
  • 原文地址:https://www.cnblogs.com/oolo/p/13452599.html
Copyright © 2011-2022 走看看