首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CSAPP lab

CSAPP学习过程 这篇文章主要记录CSAPP书和lab的学习过程,具体某个lab的踩坑过程会分别附单独链接,本文主要是记录漫长的学习过程以及方便想学但是尚未开始学习的同学参考,以下是github的lab...image.png Todo Bilibili翻译课程 lecture 1-4 搭建实验环境 Data lab Bilibili翻译课程 lecture 5-9 Bomb lab Attack...lab 前置材料 一本CSAPP CSAPP的bilibili翻译课程 实验材料 参考经验贴1 参考经验贴2 我想做些什么 开设这个仓库是想记录我做CSAPP的lab的过程,也顺便将踩坑过程分享,帮助后人少走弯路...学习过程(以Lab为单位总结) 简单查阅别的学习经验后,大多数人的分享都说看书再多遍也不如做lab学到的多,lab是课程的精髓,我已经粗略的学过编译原理,计算机组成原理和操作系统,所以我会比较快速的过一遍网课然后开始...lab,目标3个月完成大多数的lab(也许有一些实在不感兴趣的lab会跳过) Timeline 2022-03-30 完成Datalab 2022-03-28 完成实验环境搭建 2022-03-27 完成

1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    驱动开发:内核取ntoskrnl模块基地

    通常第一步就是要得到该模块的内存基址,模块分为用户模块和内核模块,这里的用户模块指的是应用层进程运行后加载的模块,内核模块指的是内核中特定模块地址,本篇文章将实现一个获取驱动ntoskrnl.exe的基地址以及长度...图片那么如何使用代码得到如上图中所展示的基地址以及大小呢,实现此功能我们需要调用ZwQuerySystemInformation这个API函数,这与上一篇文章《驱动开发:判断自身是否加载成功》所使用的NtQuerySystemInformation...回到代码上来,下方代码就是获取ntoskrnl.exe基地址以及长度的具体实现,核心代码就是调用ZwQuerySystemInformation得到SystemModuleInformation,里面的对比部分是在比较当前获取的地址是否超出了...enum _SYSTEM_INFORMATION_CLASS{SystemModuleInformation = 0xb,} SYSTEM_INFORMATION_CLASS;// 取出KernelBase基地

    60820

    花生壳黑吃黑之一:Web练手基地

    何我们web练手基地有什么关系? 现在我简单的讲解一下内网穿透原理: 内网就是局域网,网吧,校园网,单位办公网都属于此类。...它在外网放置一台服务器,接着开发出一个客户端安装在我们内网机器上(内网服务器),它的客户端会连接外网的服务器进行数据中转,花生壳只需要给域名解析到外网的服务器就可以了,这样就实现了内网映射。...就是帮助我们内网机器映射到外网的,你想一下,哪些人喜欢用这种映射啊,肯定是什么黄色电影啊 个人测试网站啊 黑色交易啊 木马什么的啊 但是今天我们主要正对的个人网站,至于什么黄色电影啊 什么的 自己找啊 用花生壳免费送的域名...ping一下得到大家都映射的公共ip,这里给大家讲一下原理,为什么内网可以做服务器啊,道理很简单,就是大家同时连接一个公网ip,这个公网ip进行数据包转发 我们得到这个公网ip啊,现在开始进行IP反查域名

    2.4K100

    ucore-lab2

    其他内容建议看Kiprey ucore_lab2 练习0 合并代码,直接meld然后copy to right就行,lab1修改的文件有: kern/debug/kdebug.c kern/trap/trap.c...kern/init/init.c 可以看到lab2与lab1有很多文件不同,记得只能修改上述三个文件。...kern/mm/pmm.c找到get_pte函数,根据注释不难写出: pte_t * get_pte(pde_t *pgdir, uintptr_t la, bool create) { /* LAB2...然后lab2提了一个问题,如何使虚拟地址与物理地址相等? 显然,由于我们现在的ucore是通过虚拟地址到物理地址的映射实现的内存管理,如果要取消该映射,我们应该反向查找lab2中的映射方式。...首先是更改内核的加载地址为0,在lab2-copy中更改tools/kernel.ld,把内核的加载地址由0xc0100000修改为0x0,之后修改内核偏移地址,在kern/mm/memlayout.h

    64130

    ucore-lab1

    基址寻址 变址寻址 基址变址寻址 在分段存储管理机制的保护模式下,每个段由如下三个参数进行定义:段基地址(Base Address)、段界限(Limit)和段属性(Attributes) 段基地址:规定线性地址空间中段的起始地址...GDTR长48位,其中高32位为基地址,低16位为段界限 线性地址部分的选择子是用来选择哪个描述符表和在该表中索引哪个描述符的。...在os_kernel_lab-master/labcodes/lab1/Makefile中,可以找到要分析的makefile。 makefile的结构如下: target....../labcodes/lab1/bin/ucore.img -s -S -d in_asm -D q.log 打开ucore,打开gdb,输入target remote localhost:1234 ,...*((uint32_t *)tf - 1) = (uint32_t)&switchk2u; } //实质只是通过改变段来改变权级 break; 以及: static void lab1

    1.9K30

    基地,推动云计算集约化(下)

    ; 多个云基地间要有数T级别的高带宽互联专线; 云基地同Internet具有单独的流量路径和网络平面互联,可以更扁平的触达任何区域的用户; 云基地的资源(机架、带宽、专线)等低成本、高效率供给; IDC...4、云基地的发展需要网络更好的支持 从前述可知,云基地部署在能源丰富的西部地区有巨大的经济意义,网络不应成为阻碍,更应该大力支持、推动这种趋势的演进。...考虑到容灾分布,需要有多个云基地,以容大的地震、洪水、极端天气、爆炸以及人为的区域范围的事件等。多个云基地间需要有大带宽的专网互联保证。...图10 云基地间大带宽互联 云基地的服务器规模从数十万台到数百万台,不可能只服务于特定区域、特定类型的用户,更不可能只托管特定模式的应用,所以我们需要假设任何一个云基地都是部署全部类型的互联网应用以及云计算服务的...然而,云基地能否持续存在并发展下去,取决于基础电信运营商能否有效理顺内部的各种关系:集团公司与各省公司如何能协调一致的推动用户从散乱的东部沿海地区的IDC往云基地迁移,云基地网络与已有的电信骨干网络的互联互通

    1.4K100

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    热门标签

    领券