All Projects → ultraji → Linux 0.12

ultraji / Linux 0.12

Licence: gpl-3.0
《Linux内核完全剖析》linux0.12源码及实验环境

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Linux 0.12

Raspberry Pi Os
Learning operating system development using Linux kernel and Raspberry Pi
Stars: ✭ 11,000 (+6114.69%)
Mutual labels:  linux-kernel
Learning Nvdla Notes
NVDLA is an Open source DL/ML accelerator, which is very suitable for individuals or college students. This is the NOTES when I learn and try. Hope THIS PAGE may Helps you a bit. Contact Me:[email protected]
Stars: ✭ 150 (-15.25%)
Mutual labels:  linux-kernel
Linux Doc
Linux Documentation 中文翻译计划
Stars: ✭ 163 (-7.91%)
Mutual labels:  linux-kernel
Ndctl
Helper tools and libraries for managing the libnvdimm (non-volatile memory device) sub-system in the Linux kernel
Stars: ✭ 122 (-31.07%)
Mutual labels:  linux-kernel
Kasld
[ KASLD ] Kernel Address Space Layout Derandomization - A collection of various techniques to bypass Linux Kernel Address Space Layout Randomization (KASLR) and retrieve the kernel base virtual address on x86 / x86_64 architectures as an unprivileged local user.
Stars: ✭ 138 (-22.03%)
Mutual labels:  linux-kernel
Ebooks
A repository for ebooks, including C, C plus plus, Linux Kernel, Compiler, OS, Algorithm, Security, Database, Network, ML and DL
Stars: ✭ 151 (-14.69%)
Mutual labels:  linux-kernel
Ckernel
中国Linux内核开发者大会
Stars: ✭ 115 (-35.03%)
Mutual labels:  linux-kernel
Mars
Asynchronous Block-Level Storage Replication
Stars: ✭ 168 (-5.08%)
Mutual labels:  linux-kernel
Khook
Linux Kernel hooking engine (x86)
Stars: ✭ 144 (-18.64%)
Mutual labels:  linux-kernel
Minimal Linux Script
One script which generates live Linux ISO image with minimal effort. Based on the first published version of Minimal Linux Live: http://github.com/ivandavidov/minimal
Stars: ✭ 160 (-9.6%)
Mutual labels:  linux-kernel
Kernel Roulette
A kernel module written in Rust
Stars: ✭ 124 (-29.94%)
Mutual labels:  linux-kernel
Rpi Kernel
Build a Linux kernel for Raspberry Pi 0/1/2/3/3B+
Stars: ✭ 133 (-24.86%)
Mutual labels:  linux-kernel
Generate kernel uboot project foride
Generate filelist and slickedit for the compiled source file and depend header file for Linux Kernel and U-boot
Stars: ✭ 152 (-14.12%)
Mutual labels:  linux-kernel
Huawei Wmi
Huawei WMI laptop extras linux driver
Stars: ✭ 120 (-32.2%)
Mutual labels:  linux-kernel
Linux Kernel Utilities
👷 Utilities to compile and / or update linux kernels for Debian and derivatives (e.g. Ubuntu, LinuxMint, etc.)
Stars: ✭ 166 (-6.21%)
Mutual labels:  linux-kernel
Liquorix Package
Liquorix Debian Package
Stars: ✭ 114 (-35.59%)
Mutual labels:  linux-kernel
Barge Os
Yet another lightweight Linux distribution for Docker containers
Stars: ✭ 151 (-14.69%)
Mutual labels:  linux-kernel
Wifi Txpower Unlocker
Stars: ✭ 173 (-2.26%)
Mutual labels:  linux-kernel
Kvdo
A pair of kernel modules which provide pools of deduplicated and/or compressed block storage.
Stars: ✭ 168 (-5.08%)
Mutual labels:  linux-kernel
Exein
Exein core for Linux based firmware
Stars: ✭ 158 (-10.73%)
Mutual labels:  linux-kernel

linux-0.12 源码学习

参考《Linux内核完全剖析 --基于0.12内核》

  1. linux-0.12目录为修改过的源代码,其中加入了中文注释,修改部分代码使其能在现在的环境下编译,并且支持GDB调试

  2. oslab为实验目录,切到oslab目录下,运行该目录下的run.sh脚本即可运行linux0.12操作系统。

实验截图

一、环境搭建

1.1 方式一

可以选择已创建好的docker镜像作为实验环境(人生苦短,我用容器)。linux用户可以通过挂载将本地项目目录挂载到容器中,windows或mac用户可以在容器内重新git clone一份(因为不区分文件名大小写会导致挂载出错)。->Dockerfile

  1. docker方式

    # 1. 从docker hub中拉取镜像
    docker pull ultraji/ubuntu-xfce-novnc
    # 2. 运行容器
    docker run -t -i -p 6080:6080 -v ${本地项目路径}:${容器内项目路径} ultraji/ubuntu-xfce-novnc
    

    或docker-compose方式

    # 1. 切到项目docker目录下
    cd linux-0.12/src/docker
    # 2.修改docker-compose.yaml中的项目挂载路径
    ...
    # 3.启动容器
    docker-compose up -d
    
  2. 通过浏览器输入http://localhost:6080就访问容器内的桌面系统了。

    • vnc登陆密码: 123456
    • 默认用户: ubuntu
    • 用户密码: 123456

1.2 方式二

ubuntu(64bit,>=14.04) 的用户也可以使用src/code目录下的一键环境搭建脚本。->setup.sh

二、如何使用

该项目的oslab为实验目录,切到oslab目录下,运行该目录下的run.sh脚本即可运行linux0.12操作系统。

  • ./run.sh -m  编译生成新的Image镜像
  • ./run.sh -g  运行bochs模拟器,与gdb联调
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].