diff --git a/W12D1.md b/W12D1.md new file mode 100644 index 0000000..bbfb784 --- /dev/null +++ b/W12D1.md @@ -0,0 +1,11 @@ +#Android kernal Structure + +* 应用程序(Applications): Android应用程序是用户与设备交互的主要方式。应用程序可以是预装的或下载的,可以通过Google Play等应用商店获得。每个应用程序都是独立的,并在自己的进程中运行。 + +* 应用程序框架(Application Framework): Android应用程序框架是一组API和类库,开发人员可以使用这些工具来创建和管理应用程序。该框架提供了许多常见功能的支持,如UI设计、数据存储、通信和安全性。 + +* 系统运行库(System Runtime): Android系统运行库包含了Java虚拟机(JVM)、核心Java类库和Dalvik虚拟机(DVM)。该组件负责管理和执行应用程序代码,同时处理各种系统级别操作,例如进程管理、内存管理和网络通信。 + +* 硬件抽象层(Hardware Abstraction Layer): Android硬件抽象层提供了硬件驱动程序的标准接口,使得不同的设备制造商可以轻松地适配其硬件到Android系统中。硬件抽象层还提供了对摄像头、蓝牙、WiFi等重要设备的支持。 + +* Linux内核(Linux Kernel): Android操作系统是基于Linux内核构建的,该内核负责管理与硬件交互的底层功能。它处理进程管理、资源分配、内存管理、网络协议和安全性等任务,并提供了许多关键的驱动程序和服务。 \ No newline at end of file diff --git a/W16D1.md b/W16D1.md new file mode 100644 index 0000000..a4ec7c1 --- /dev/null +++ b/W16D1.md @@ -0,0 +1,11 @@ +# Review + +* every single problem in test + +* 存储系统结构设计 + +* TTE/安全初步 + +* 闲聊 + +* VM machine 细节 \ No newline at end of file diff --git a/W4D1.md b/W4D1.md new file mode 100644 index 0000000..ceb7759 --- /dev/null +++ b/W4D1.md @@ -0,0 +1,19 @@ +# VM +* 虚拟内存是指计算机操作系统用于管理进程访问内存的技术。它将进程需要访问的内存空间映射到物理内存或者硬盘上。 + +* 虚拟内存允许各个程序在自己的地址空间中运行,并且使得每个程序都可以看到一块连续的内存,而不必关心这些内存实际上是散布在物理内存中的。 + +* 虚拟内存还可以防止进程之间相互干扰,提高了系统的稳定性和安全性。 + +* 操作系统通过使用页面置换算法来管理虚拟内存。当进程需要访问的内存页没有被加载到物理内存时,操作系统会将其从磁盘中读取并放入物理内存中。 + +# Swap +* 交换空间是指计算机硬盘上已经预留出来的一部分空间,用于当物理内存不足时存储不常用的数据。 + +* 当物理内存不足时,操作系统会将一部分数据保存到交换空间中,以便给正在运行的进程提供更多的物理内存。 + +* 交换空间虽然可以提高系统的运行效率,但是它的使用也会降低系统的性能。因为硬盘的访问速度远不如内存,所以在频繁使用交换空间时,系统的响应速度会明显下降。 + +* 调整交换空间的大小可以影响系统的性能。如果交换空间太小,可能会导致系统崩溃;而如果交换空间太大,可能会浪费硬盘空间并导致系统变慢。 + +* 操作系统通常会在安装时自动创建一定大小的交换空间。管理员也可以手动调整交换空间的大小,以适应特定的应用程序或者工作负载。 \ No newline at end of file diff --git a/W8D1.md b/W8D1.md new file mode 100644 index 0000000..5a91f45 --- /dev/null +++ b/W8D1.md @@ -0,0 +1,10 @@ +# nelson +full-nelson.c是一个利用Linux漏洞的程序示例,这个漏洞被称为“完整的Nelson漏洞”(Full-Nelson Vulnerability),它允许攻击者在没有root权限的情况下提升自己的权限。 + +这个漏洞是由于Linux内核中的一个安全问题引起的。攻击者可以通过使用“完整的Nelson锁定”技术来绕过内核中的安全机制,从而获取高级别的权限。 + +漏洞的利用需要使用特殊的程序代码,如full-nelson.c。该程序运行后,将执行一系列操作,包括打开/proc/kallsyms文件、搜索系统中的所有符号和函数,并尝试查找与内存分配相关的特定函数。如果成功找到这些函数,程序将使用“完整的Nelson锁定”技术来增加自己的权限级别。 + +由于该漏洞已经得到了修复,因此目前的Linux内核不受此漏洞威胁。然而,这个例子程序仍然是一个很好的学习资源,可以帮助人们更好地理解Linux内核的工作原理以及如何编写漏洞利用程序。 + +源网站:[CSDN](https://blog.csdn.net/m_o_bz/article/details/40700945) \ No newline at end of file