avatar
Articles
7
Tags
2
Categories
4

Home
Xun's blog
Search
Home
操作系统真象还原: 从0开始自制操作系统 全过程记录
Created2023-12-15|Operating System
获取源码:Tiny-OS 1. 部署工作环境,安装并配置bochs 我的系统为ubuntu22.04 1.1. 安装bochs 在这里下载好bochs的源码包,我使用的版本是boch-2.7 构建安装 ./configure \ --prefix=/home/elite-zx/bochs \ --enable-debugger \ --enable-disasm \ --enable-iodebug \ --enable-x86-debugger \ --with-x \ --with-x11 make -j $(nproc) && make install 安装汇编器NASM sudo apt update && sudo apt -y install nasm 1.2. 配置bochs 根据书在bochsrc.disk中写入以下内容 # bochs configuration file # bochsrc.disk # memory size: 32MB megs: 32 # B ...
Stanford CS144 Spring 2023: 手搓TCP
Created2023-05-31|Computer Network
1. lab0 networking warmup 1.1. Set up GNU/Linux on your computer ubuntu22.04LTS下执行 sudo apt update && sudo apt install git cmake gdb build-essential clang \ clang-tidy clang-format gcc-doc pkg-config glibc-doc tcpdump tshark 安装g++12.3.0 sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa sudo apt update sudo apt install g++-12 -y 将minnow仓库上传到自己的仓库,参考这个方法 如果你做的是2023年之前的版本,需要用到sponge仓库,那么我这里有一份未被修改过的版本 1.2. Networking by hand 1.2.1. Fetch a Web page 先提前准备好这3行首部信息,连接成功后快速复制进去,避免连接断开(Co ...
计算机网络自顶向下: Socket Programming Assignment + Miscellaneous Labs
Created2023-05-24|Computer Network
Programming Tasks Of Computer-Networking-A-TopDown-Approach WebServer UDPPing SMTP-Client Proxy-Server ABP-RDT GBN-RDT 1 lab0 WarmUp 1.1. UDP UDPClient.py from socket import* serverName = '127.0.0.1' # ip or hostname , if is hostname,automatically carry out DNS lookup to find correspond ip serverPort = 12000 # designate destination port number clientSocket = socket(AF_INET,SOCK_DGRAM);# create client socket(ipv4,udp), clientPort is automatically allocated by OS message = input ...
计算机网络自顶向下: Wireshake Lab --- HTTP DNS UDP TCP
Created2023-05-18|Computer Network
lab1 Getting Start 用Wireshake捕获一个GET请求 下载实验相关文件, linux下执行apt install wireshark下载 参照指导书,下载Wireshake软件,这个软件可以捕获计算机发出或接受的数据包(package,其实主要是捕获链路层(link layer)的帧(frame),因为该数据帧封装(encapsulate)了所有的上层协议) 选择Wlan接口(wireless local-area network,这里指wifi),linux下选择wlp1s0接口,开启捕获 访问这个网站以发出get请求,Wireshake会捕获这个HTTP信息 注意: 关闭VPN 访问目标网站后,清除浏览器缓存可再次抓包 从上图,我们得到以下信息: 我在21:02:28.468029时发出了GET请求,在21:02:28.735677时收到了服务器的HTTP OK 回复 我电脑(source)是IP地址为192.168.0.105, 服务器(Destination)IP地址为128.119.245.12 lab2 HTTP 2 ...
哈工大操作系统: 实验lab1~8
Created2023-05-06|Operating System
前言 Learning operating system by coding it! 实验0 实验环境搭建 reference1 reference2 遇到的问题:在编译linux0.11时,出现fatal error:asm/ioctl.h: No such file or directory,loctl.h这个文件是在库linux-lib-dev中的,而且我已经安装了这个库,但还是有这个错误 解决方法:使用i386版本的linux-libc-dev sudo apt-get install linux-libc-dev:i386 实验1 操作系统的引导 1. 改写bootsect.s 我们只需要bootsect.s源码中打印字符串的部分,因为不涉及迁移bootsect从0x07c00到0x90000的操作,所以bootsect.s读入内存后还是在0x07c00的位置,因此要添加mov es, #07c0才能使es:bp指向正确的字符串起始位置。此外,cx参数的大小为字符串大小+6,这里的6是3个CR/LF (carriage return/line feed: 13 ...
CMU CS15213: CSAPP lab1~4
Created2023-03-06|CSAPP
lab1 dataLab 前提 确保有一个linux系统,并已经执行过以下两条命令: 安装gcc:sudo apt-get install build-essential 安装gcc的交叉编译环境.):sudo apt-get install gcc-multilib,因为实验的程序需要以32位方式编译 在CMU的CSAPP网站上下载实验所需资料,包括** README, Writeup,Self-Study Handout,** 这三部分均包含对实验的要求说明(Handout的说明在其包含的bits.c文件中由注释给出),Self-Study Handout包括用于测试的文件 1.bitXor(x,y) 要用~和&实现异或^,即将结果中 1-0,0-1对应的位设置为1 x&y中为1的位(bit)对应 1-1; 取反后为:0-0、0-1、1-0; (x&y)为1的位(bit)对应 0-0; 取反后为:1-1、0-1、1-0; 两个做交集即为结果。(位向量可以表示集合,&,|,~可视为 交,并,补操作) /* bitXor - x^y using o ...
汇编语言实践
Created2023-02-04|CSAPPassembly language
前言: 前前后后看完这本书,做完所有实验和检测点,用了接近一个月的时间,除了最后几天比较认真,其余时间是比较懒散的,这本书其实最多半个月就能解决掉。接下来会步入CSAPP第三章的学习,争取早日把有名的bomb lab完成了 实验1 查看CPU和内存,用机器指令和汇编指令编程 debug环境搭建:参考此文 assignment 1 用A命令向内存中写入汇编指令,用U命令查看 用R命令分别修改CS、IP寄存器,即CS:IP的指向,用T命令逐条执行 assignment 2 写入并查看指令 修改_CS:IP_指向 执行指令,计算282^828,结果为 AX=0100HAX = 0100HAX=0100H assignment 3 用D命令查找,最终在FFFF5H→FFFFCH(FFFF:0005→FFFF:000C)FFFF5H \to FFFFCH(FFFF:0005 \to FFFF:000C)FFFF5H→FFFFCH(FFFF:0005→FFFF:000C)发现dd/mm/yydd/mm/yydd/mm/yy字样的生产日期 尝试用E ...
1
avatar
Xun Morris
At Ease
Articles
7
Tags
2
Categories
4
About Me
Categories
  • CSAPP2
    • assembly language1
  • Computer Network3
  • Operating System2
Tags
lab project
Info
Article :
7
Run time :
UV :
PV :
©2023 By Xun Morris
Search
Loading the Database