自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 2023-2024-1 20232812《Linux内核原理与分析》第十三周作业

缓冲区溢出是一种常见的计算机安全威胁。它发生在当向一个缓冲区写入数据超过了该缓冲区所预设的容量时,多余的数据会溢出到其他内存地址,可能会覆盖程序中的其他数据或者代码。这样可能导致程序发生各种意想不到的问题,比如程序崩溃、产生错误结果或者执行一些不应执行的操作。更为严重的是,攻击者有时候可以利用这个漏洞来运行他们自己插入进去的恶意代码,从而侵入系统或获取信息等。这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段。

2023-12-17 20:38:23 32 1

原创 2023-2024-1 20232812《Linux内核原理与分析》第十二周作业

本周作业我在seedleb实验环境上和别同学合作做的,在其他途径提交。

2023-12-09 21:12:57 41

原创 2023-2024-1 20232812《Linux内核原理与分析》第十一周作业

操作系统安全就是要确保操作系统自身是安全的,它可由操作系统自身安全配置、相关安全软件以及第三方安全设备实现的。防火墙是一种计算机网络安全系统,可限制进出专用网络或专用网络内的互联网流量。此类软件防火墙或专用的软硬件防火墙的主要功能是选择性地阻止或允许数据包。防火墙通常用于帮助阻止恶意活动并防止专用网络内外的任何人进行未经授权的 Web 活动。防火墙可以被视为门控边界或网关,用于管理被允许和被禁止的 Web 活动在专用网络中的传播。该术语源于物理墙的概念,即在紧急救援人员将其扑灭之前用于减缓火势蔓延的屏障。

2023-11-30 15:45:07 81

原创 2023-2024-1 20232812《Linux内核原理与分析》第十周作业

1.什么是容器Docker容器是一个完整的文件系统,这个文件系统中包含了你的软件运行所需要的全部环境,如:软件的源码、运行环境、所需的软件等。也就是说,你的软件运行所需要的环境都包含在了Docker容器中,这样的话当你把代码部署到服务器上时就不需要考虑环境问题,只要服务器安装了Docker就能准确无误地运行你的软件。2.基本概念(1).镜像Docker 镜像我们都知道,操作系统分为内核和用户空间。对于 Linux 而言,内核启动后,会挂载 root 文件系统为其提供用户空间支持。

2023-11-26 11:34:51 36 1

原创 2023-2024-1 20232812《Linux内核原理与分析》第九周作业

prev_ip] "=m" (prev->thread.ip), // 输出约束,将 [prev_ip] 绑定到 prev 进程的入口地址。: [prev_sp] "=m" (prev->thread.sp), // 输出约束,将 [prev_sp] 绑定到 prev 进程的栈指针。"=b" (ebx), "=c" (ecx), "=d" (edx), // 输出约束,将寄存器 EBX、ECX、EDX 绑定到相应变量。// 内存约束,告诉编译器需要刷新内存缓存。

2023-11-15 21:43:01 34 1

原创 2023-2024-1 20232812《Linux内核原理与分析》第八周作业

在sys_execve、load_elf_binary和start_thread设置断点。exec函数沾到menu里。1.链接和ELF文件概念。编写函数查看头部信息。

2023-11-12 17:59:52 38 1

原创 2023-2024-1 20232812《Linux内核原理与分析》第七周作业

借用csapp中对fork,进程的理解。//在main函数中写入如下代码。//fork函数代码如下。1.代码放入menuos。

2023-11-01 22:31:10 49 1

原创 2023-2024-1 20232812《Linux内核原理与分析》第六周作业

"0"(83), "D"(argv[1]), "S"(mode) // 83是x86_64架构上'mkdir'系统调用的编号。: "rcx", "r11", "memory", "cc" // 通知编译器此'asm'块期间这些寄存器和内存可能会更改。"syscall" // syscall指令要求内核调用在rax(x86_64)中的编号的系统调用。: "=a" (result) // 系统调用的结果将存储在'result'变量中。// 'syscall' 是某些汇编语言中使用的一条指令。

2023-10-29 20:48:00 33

原创 2023-2024-1 20232812《Linux内核原理与分析》第五周作业

mkdir函数简要介绍头文件库:函数原型: int mkdir(const char *pathname, mode_t mode);函数说明:mkdir()函数以mode方式创建一个以参数pathname命名的目录,mode定义新创建目录的权限。返回值:若目录创建成功,则返回0;否则返回-1,并将错误记录到全局变量errno中。

2023-10-19 18:15:35 69

原创 2023-2024-1 20232812《Linux内核原理与分析》第四周作业

在祖先进程启动之前start_kernel函数做了很多事情,如锁存器,根据处理器标识ID初始化处理器,开启cgroups子系统,设置每CPU区域环境,初始化VFS Cache机制,初始化内存管理,rcu,vmalloc,scheduler(调度器),IRQs(中断向量表),ACPI(中断可编程控制器)以及其它很多子系统。通过刚刚设置的端口号建立gdb和gdbserver之间的连接,通过break设置断点,现在在内核启动的起点start_kernel函数处设置一个断点。使用gdb跟踪调试Linux内核。

2023-10-12 20:50:30 45

原创 2023-2024-1 20232812《Linux内核原理与分析》第三周作业

本次通过实验楼的实验,了解学习了操作系统是如何工作原理。使用实验楼的虚拟机打开 shell。

2023-09-25 20:44:26 76 1

原创 2023-2024-1 20232812 《Linux内核原理与分析》第二周作业

内嵌汇编用 asm() 关键字来表明括号内写的是汇编码,每段汇编码当用字符串引号来引起来,在编译时直接套在编译后的汇编文件中。由于计算机的原因,大多数系统用换行符作为汇编语言一条语句的结束符,而有些系统用分号';'表示,而也有些系统的分号是作为注释符号。所以每个系统下的汇编语言语法可能并不统一。不同系统下的寄存器可能不同,例如fp,bp,ebp,rbp都是不同系统下功能类似的寄存器。也可以看出堆栈情况的表达方式也和WINDOWS下的不一样了。

2023-09-22 20:37:10 74

原创 2023-2024-1 20232812《Linux内核原理与分析》第一周作业

第一周作业

2023-09-16 21:38:56 73

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除