自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2021-2022-1 20212812《Linux内核原理与分析》第十二周作业

Linux系统监控实战一、linux系统监控常用命令toptop 命令用于按一定的顺序显示所有正在运行而且处于活动状态的实时进程,而且会定期更新显示结果。这条命令显示了 CPU 的使用率、内存使用率、交换内存使用大小、高速缓存使用大小、缓冲区使用大小,进程 PID、所使用命令以及其他。它还可以显示正在运行进程的内存和 CPU 占用多的情况。topvmstat用于显示虚拟内存、内核线程、磁盘、系统进程、I/O 块、中断、CPU 活动等的统计信息。一般 vmstat 工具的使用是通过两个数字

2021-12-08 14:12:59 1161

原创 2021-2022-1 20212812《Linux内核原理与分析》第十一周作业

Kali 渗透测试:服务器攻击实战一、Kali Linux 安装学习1.Kali Linux 安装有几种方法:下载官方 ISO 镜像,安装到物理机器或虚拟机中下载官方虚拟机镜像,在虚拟机管理软件中启动下载并部署 ARM 镜像到 ARM 系统中任何方案都需要从官方网站下载镜像,下载之后务必校验 SHA1 哈希值,避免下载到有安全漏洞的系统。2.Kali APT 包管理安装软件包: sudo apt-get install <软件包名>卸载软件包: sudo apt-get

2021-12-01 15:24:50 645

原创 2021-2022-1 20212812《Linux内核原理与分析》第九周作业

理解进程调度时机跟踪分析进程调度与进程切换的过程一、原理分析1、进程的调度时机与进程切换操作系统原理中介绍了大量进程调度算法,这些算法从实现的角度看仅仅是从运行队列中选择一个新进程,选择的过程中运用了不同的策略而已。对于理解操作系统的工作机制,反而是进程的调度时机与进程的切换机制更为关键。2、进程调度的时机(1)中断处理过程(包括时钟中断、I/O中断、系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule();(2)内核线程可以直接

2021-11-20 20:36:13 115

原创 2021-2022-1 20212812 《Linux内核原理与分析》第八周作业

一、实验:Linux 内核如何装载和启动一个可执行程实验步骤1.在shell中依次运行图中命令,获取本次实验的代码,并编译运行2.启动gdb调试,并在系统调用sys_execve的入口处设置断点(gdb) b sys_execve继续运行程序,在QEMU窗口中输入exec,系统就会停在上面设置的断点处,如图:接下来我们可以单步跟踪sys_execve的内核代码设置以下断点来完整地跟踪进程的创建和启动代码:b load_elf_binaryb start_thread总结三、

2021-11-13 17:40:11 125

原创 2021-2022-1 20212812《Linux内核原理与分析》第七周作业

一、分析 Linux 内核创建一个新进程的过程实验1、在MenuOS中增加fork命令,使用help查看现有命令,步骤如下:cd menu mv test_fork.c test.c//在MenuOS中增加fork命令,并覆盖掉test.c文件make rootfs MenuOS>>help MenuOS>>fork2、在gdb中调试//shell1中启动内核cd ~/LinuxKernelqemu -kernel linux-3.18.6/arch/x8

2021-11-06 15:40:12 151

原创 2021-2022-1 20212812 《Linux内核原理与分析》第六周作业

使用 gdb 跟踪分析一个系统调用内核函数一、实验过程1.给MenuOS增加命令:geiuid然后进入menu,运行make rootfs,结果如下:2.使用gdb跟踪系统调用内核函数sys_time步骤如下://shell1中启动内核cd ~/LinuxKernelqemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -S -s// shell2中使用gdb调试cd ~/LinuxKernelgdb

2021-10-30 18:29:49 137

原创 2021-2022-1 20212812 《Linux内核原理与分析》第五周作业

一、课本学习1.用户态、内核态和中断内核态:处于高的执行级别下,代码可以执行特权指令,访问任意的物理地址,这时的CPU就对应内核态,对所有的指令包括特权指令都可以执行。用户态:处于低的执行级别下,代码只能在级别允许的特定范围内活动。在日常操作下,执行系统调用的方式是通过库函数,库函数封装系统调用,为用户提供接口以便直接使用。Intel x86 CPU有4种不同的执行级别0、1、2、3,Linux只使用了其中的0和 3两个级別分别表示内核态和用户态。用户态和内核态很显著的区别方法就是CS:EIP的指

2021-10-23 19:37:27 205

原创 2021-2022-1 20212812《Linux内核原理与分析》第四周作业

实验三一、实验内容:跟踪分析Linux内核的启动过程二、实验过程1.使用实验楼的虚拟机打开 shell,输入下列命令cd ~/LinuxKernel/qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img使用 gdb 跟踪调试内核$ qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -s -S关于-s和-S选项的说明:-

2021-10-15 21:05:46 71

原创 2021-2022-1 20212812《Linux内核原理与分析》第三周作业

一、实验要求完成一个简单的时间片轮转多道程序内核代码二、实验过程1.输入以下指令编译运行mykernel$ cd ~/LinuxKernel/linux-3.9.4$ rm -rf mykernel$ patch -p1 < ../mykernel_for_linux3.9.4sc.patch$ make allnoconfig$ make // 编译内核$ qemu -kernel arch/x86/boot/bzImage执行结果如下2.查看mymain.c与m

2021-10-09 23:37:34 104

原创 2021-2022-1 20212812《Linux内核原理与分析》第二周作业

遇到的问题一、计算机是如何工作的?现代计算机大都采用冯诺依曼结构,冯诺依曼结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,所以计算机在运行的时候需要从中将数据取出,然后用程序进行处理,最后得到输出。我们以实验中简单的C语言程序作为例子讨论计算机如何工作:int g(int x){ return x + 3;} int f(int x){ return g(x);} int main(

2021-10-03 12:58:51 88

原创 2021-2022-1 20212812《Linux内核原理与分析》第一周作业

一、实验一1.Linux是什么?Linux是一个操作系统,就如我们熟知的windows、Mac OS。Linux 本身只是操作系统的内核。内核是使其它程序能够运行的基础。它实现了多任务和硬件管理,用户或者系统管理员交互运行的所有程序实际上都运行在内核之上。操作系统在整个计算机中的角色:我们的Linux主要是 系统调用 和 内核 那两层。2.Linux与UNIX的关系Linux 是一个类似 Unix 的操作系统,Unix 要早于 Linux,Linux 的初衷就是要替代 UNIX,并在功能和用户

2021-09-26 23:21:55 225

空空如也

空空如也

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

TA关注的人

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