# NEMU实践 **Repository Path**: virtual111/nemu-practice ## Basic Information - **Project Name**: NEMU实践 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-09 - **Last Updated**: 2025-10-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README <<<<<<< HEAD # ICS2021 Programming Assignment This project is the programming assignment of the class ICS(Introduction to Computer System) in College of Intelligence and Computing, Tianjin Univerisity. This project is introduced from Nanjin University in 2016. Thank you for Prof. Chunfeng Yuan of NJU and Dr. Zihao Yu of ICT. The following subprojects/components are included. Some of them are not fully implemented. * NEMU * testcase * uClibc * kernel * typing game * NEMU-PAL ## NEMU NEMU(NJU Emulator) is a simple but complete full-system x86 emulator designed for teaching. It is the main part of this programming assignment. Small x86 programs can run under NEMU. The main features of NEMU include * a small monitor with a simple debugger * single step * register/memory examination * expression evaluation with the support of symbols * watch point * backtrace * CPU core with support of most common used x86 instructions in protected mode * real mode is not supported * x87 floating point instructions are not supported * DRAM with row buffer and burst * two-level unified cache * IA-32 segmentation and paging with TLB * protection is not supported * IA-32 interrupt and exception * protection is not supported * 6 devices * timer, keyboard, VGA, serial, IDE, i8259 PIC * most of them are simplified and unprogrammable * 2 types of I/O * port-mapped I/O and memory-mapped I/O ## testcase Some small C programs to test the implementation of NEMU. ## uClibc uClibc(https://www.uclibc.org/) is a C library for embedding systems. It requires much fewer run-time support than glibc and is very friendly to NEMU. ## kernel This is the simplified version of Nanos(http://cslab.nju.edu.cn/opsystem). It is a uni-tasking kernel with the following features. * 2 device drivers * Ramdisk * IDE * ELF32 loader * memory management with paging * a simple file system * with fix number and size of files * without directory * 6 system calls * open, read, write, lseek, close, brk ## typing game This is a fork of the demo of NJU 2013 oslab0(the origin repository has been deleted, but we have a fork of it -- https://github.com/nju-ics/os-lab0). It is ported to NEMU. ## NEMU-PAL This is a fork of Wei Mingzhi's SDLPAL(https://github.com/CecilHarvey/sdlpal). It is obtained by refactoring the original SDLPAL, as well as porting to NEMU. ======= # NEMU实践 #### 介绍 {**以下是 Gitee 平台说明,您可以替换此简介** Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) >>>>>>> d3b9f46b458ccc915b0adfe40a91f9318a9b3481