随笔分类 - OS/Linux
摘要:buildroot简介 1. 概述 https://buildroot.org/downloads/manual/manual.html#_getting_started 目前我的理解是,buildroot是一个可以自动化的构建完整Linux系统的工具。 一般来说,要构建一个系统,需要配置 a cr
阅读全文
摘要:参考 http://gorails.com/setup/ubuntu/16.04 概述 Project 2 主要探究对web的攻击,本次试验共有6个部分。 Project 2中攻击的是一个提供电子货币服务网站--bitbar(使用ruby 2.4和rails 5.0.2实现)。 bitbar网站的搭
阅读全文
摘要:参考的资料: hello world https://www.cnblogs.com/bitor/p/9608725.html linux内核监控模块——系统调用的截获 https://www.cnblogs.com/lxw315/p/4773566.html 实现: 实验目的: 内核模块的编写:完
阅读全文
摘要:参考: 内存管理: https://www.jianshu.com/p/49cbaccd38c5 crc校验 https://www.cnblogs.com/zzdbullet/p/9580502.html 内容: github
阅读全文
摘要:实验内容: 通过python编程调用windows的api,编写键盘和鼠标监控的hook,将相关信息保存记录到txt文档中。 实验步骤: 1.Hook技术,pyHook3和pywin32简介 1.1 Hook简介 windows应用程序是基于消息驱动的。各种应用程序对各种消息作出响应从而实现各种功能
阅读全文
摘要:https://www.jianshu.com/p/2dc01727be45 一、进程与线程的区别: 1、进程是资源分配的最小单位,线程是程序执行的最小单位(资源调度的最小单位) 2、进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段,这种操作
阅读全文
摘要:mov AH, 2DH ;写时间. mov DH, 0 ;此时为0秒. int 21H ;写入系统. 遇到了这个问题。 原因是以及在保护模式了。保护模式下中断机制发生了很大的变化,原来的中断向量表被IDT(Interrupt Descriptor Table,中断描述符表)代替,实模式下能用的BIO
阅读全文
摘要:实验目的: 理解中断与异常机制的实现机理 对应章节:第三章3.4节,3.5节 实验内容: 1. 理解中断与异常的机制 2. 调试8259A的编程基本例程 3. 调试时钟中断例程 4. 建立IDT,实现一个自定义的中断,功能可自 定义,如特定键盘组合触发某个动作、电子 钟、自己游走的字符显示、蜂鸣器等
阅读全文
摘要:实验目的: • 如何从软盘读取并加载一个Loader程序到操作 系统,然后转交系统控制权 • 对应章节:第四章 实验内容: 1. 向软盘镜像文件写入一个你指定的文件,手 工读取在磁盘中的信息 2. 在软盘中找到指定的文件,读取其扇区信息 3. 将指定文件装入指定内存区,并执行 4. 学会在bochs
阅读全文
摘要:总体而言 操作系统启动 时工作在实模式,此时有BIOS调用。 之后根据引导扇区,进行系统引导。 一个操作系统的实现实验里,使用引导扇区装载loader 然后loader装载内核 以上都在实模式 然后loader在装载内核到内存后跳入保护模式。 此后都在保护模式,而之后的用户态和内核态是在保护模式而言
阅读全文
摘要:参考 https://blog.csdn.net/housansan/article/details/41833581 在网上看到2中解决此问题的方法:1.使用dos下的debug32工具单步跟踪pmtest2.com的运行情况。但这个方法存在问题,当跟踪到mov cr0,eax语句时freedos
阅读全文
摘要:参考 https://www.cnblogs.com/HonkerYblogs/p/10285619.html https://blog.csdn.net/time4/article/details/25079417 https://www.cnblogs.com/longintchar/p/522
阅读全文
摘要:问题描述及思路 代码 一些细节见注释 这里ret应该用int。。忘了改了。 运行结果 因为座位数和到来最大间隔的原因,没有出现全部椅子被占用的情况
阅读全文
摘要:题外话: 这应该是最近有点难度的作业了,起码比之前的理发师,读写,哲学家问题要难。 但是做好程序的结构,自顶向下,就还是不难的。 银行家算法简介: 代码: init() 初始化 reset() 资源回收 Banker() 银行家算法 safe() 安全性算法 效果图: 遇到的问题: 主要问题是一开始
阅读全文
摘要:主要涉及CreateFile,CreateFileMapping,GetLastError,MapViewOfFile,sprintf,OpenFileMapping,CreateProcess CreateFile 获得文件Handle CreateFileMapping创建Handle的映射 M
阅读全文
摘要:内容是主进程创建子进程计算斐波那契数列。 其中计算到第几项是有主进程命令行输入。 共享内存段,并且查看了一些信息。 参考操作系统概念第七版 3.10,3.11 关于LINUX C库函数 中的 fprintf - xiaoran_zhu的专栏 - CSDN博客 共享内存函数(shmget、shmat、
阅读全文
摘要:线程饥饿: 进程无法得到资源,(cpu或者io资源或者别的什么资源),所以无法进行下去 比如说读者写者问题,如果读者优先,那么写者可能会饿死。 又比如操作系统概念的一道习题。 用broadcast可能能解决一点问题。因为可以signal按入队顺序唤醒线程,而broad同时唤醒。 注意7.15用的变量
阅读全文
摘要:这里是一部分内容,还会做修改。 一:目的及内容 学习fork(),exec,pthread库函数的使用,阅读源码,分析fork,exec,pthread_create函数的机理 代码实现: 进程A创建子进程B 子进程B与父进程A分别对应不同的可执行体:A打印Hello world,B实现sum累加
阅读全文
摘要:内容: 向Linux增加一个系统调用 撰写一个应用测试程序调用该系统调用 使用ptrace或类似的工具对该测试程序进行跟踪调 环境: 1.vmware workstation 15.0.0 2.ubuntu-18.10-desktop 3.linux-4.18.14 步骤: 一.准备环境 在终端操作
阅读全文