- 在开始学习内核内存读写篇之前,我们先来实现一个简单的内存分配销毁堆的功能,在内核空间内用户依然可以动态的申请与销毁一段可控的堆空间,一般而言内核中提供了ZwAllocateVirtualMemory这个函数用于专门分配虚拟空间,而与之相对应的则是ZwFreeVirtualMemory此函数则用于销毁堆内存,当我们需要分配内核空间时往往需要切换到对端进程栈上再进行操作,接下来LyShark将从... 在开始学习内核内存读写篇之前,我们先来实现一个简单的内存分配销毁堆的功能,在内核空间内用户依然可以动态的申请与销毁一段可控的堆空间,一般而言内核中提供了ZwAllocateVirtualMemory这个函数用于专门分配虚拟空间,而与之相对应的则是ZwFreeVirtualMemory此函数则用于销毁堆内存,当我们需要分配内核空间时往往需要切换到对端进程栈上再进行操作,接下来LyShark将从...
- 线程死锁缺陷的原因主要是多个线程相互等待对方释放资源,形成死循环等待的情况。这种情况通常发生在多个线程同时请求获取相同的资源时,如果处理不当,就会出现死锁。以下是一些可能引发线程死锁缺陷的原因:资源竞争:多个线程竞争同一个资源,如果互相等待对方释放资源,就会出现死锁。同步问题:如果多个线程同时对共享资源进行读写操作,而没有使用正确的同步机制,也会出现死锁。不恰当的锁定顺序:如果多个线程按不同... 线程死锁缺陷的原因主要是多个线程相互等待对方释放资源,形成死循环等待的情况。这种情况通常发生在多个线程同时请求获取相同的资源时,如果处理不当,就会出现死锁。以下是一些可能引发线程死锁缺陷的原因:资源竞争:多个线程竞争同一个资源,如果互相等待对方释放资源,就会出现死锁。同步问题:如果多个线程同时对共享资源进行读写操作,而没有使用正确的同步机制,也会出现死锁。不恰当的锁定顺序:如果多个线程按不同...
- 进程 是计算机中的重要概念,每个运行中的程序都有属于自己的 进程 信息,操作系统可以根据这些信息来进行任务管理,比如在我们Windows中的任务管理器中,可以看到各种运行中的任务信息,这些任务就可以称之为 进程,简单的 进程 二字后面包含着许多知识,比如为什么OS需要对任务进行管理、任务信息是如何组成的、如何创建新任务等,下面我将带大家从 冯诺依曼 结构体系开始,理解学习 进程 相关知识 进程 是计算机中的重要概念,每个运行中的程序都有属于自己的 进程 信息,操作系统可以根据这些信息来进行任务管理,比如在我们Windows中的任务管理器中,可以看到各种运行中的任务信息,这些任务就可以称之为 进程,简单的 进程 二字后面包含着许多知识,比如为什么OS需要对任务进行管理、任务信息是如何组成的、如何创建新任务等,下面我将带大家从 冯诺依曼 结构体系开始,理解学习 进程 相关知识
- 五一假期过的可真快,今天开始,又要搬砖了。在五一假期当中,冰河做了一项调研,感觉结果还是挺合乎情理的。 五一假期过的可真快,今天开始,又要搬砖了。在五一假期当中,冰河做了一项调研,感觉结果还是挺合乎情理的。
- 单例设计模式介绍所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如 Hibernate 的SessionFactory,它充当数据存储源的代理,并负责创建 Session 对象。SessionFactory 并不是轻量级的,一般情况下,一个项目通常只需要一个 SessionFactory 就... 单例设计模式介绍所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如 Hibernate 的SessionFactory,它充当数据存储源的代理,并负责创建 Session 对象。SessionFactory 并不是轻量级的,一般情况下,一个项目通常只需要一个 SessionFactory 就...
- GC分类针对HotSpot VM的实现,它里面的GC按照回收区域又分为两大种类型:一种是部分收集(Partial GC),一种是整堆收集(Full GC)部分收集(Partial GC):不是完整收集整个Java堆的垃圾收集。其中又分为:新生代收集(Minor GC / Young GC):只是新生代(Eden / S0, S1)的垃圾收集老年代收集(Major GC / Old GC)... GC分类针对HotSpot VM的实现,它里面的GC按照回收区域又分为两大种类型:一种是部分收集(Partial GC),一种是整堆收集(Full GC)部分收集(Partial GC):不是完整收集整个Java堆的垃圾收集。其中又分为:新生代收集(Minor GC / Young GC):只是新生代(Eden / S0, S1)的垃圾收集老年代收集(Major GC / Old GC)...
- 远方有海,有山有林,远方总是飘扬着你的梦。 ——许达然编辑1.查壳编辑 32bit,加了UPX壳2.虚拟机脱壳Youngter-drive脱壳3.静态分析寻找思路编辑跟进main_0函数 编辑线程控制的知识不懂,去搜一下函数createMutexW 函数创建或打开命名或未命名的互斥对象。HANDLE CreateMutexW( [in, ... 远方有海,有山有林,远方总是飘扬着你的梦。 ——许达然编辑1.查壳编辑 32bit,加了UPX壳2.虚拟机脱壳Youngter-drive脱壳3.静态分析寻找思路编辑跟进main_0函数 编辑线程控制的知识不懂,去搜一下函数createMutexW 函数创建或打开命名或未命名的互斥对象。HANDLE CreateMutexW( [in, ...
- 1.查看文件保护机制编辑使用的是新版本的checksec2.拖入IDA分析查壳编辑是一个64文件,拖入64位IDA这个文件就是我们要攻击的服务器中的一个进程的代码,进程就是一个正在运行的程序分析敏感函数打开字符串窗口编辑 跟进,光标点在command,Ctrl+x交叉引用,查看使用字符串的函数编辑 继续跟进编辑按下空格键切换为文本模式编辑发现函数地址在000000000040... 1.查看文件保护机制编辑使用的是新版本的checksec2.拖入IDA分析查壳编辑是一个64文件,拖入64位IDA这个文件就是我们要攻击的服务器中的一个进程的代码,进程就是一个正在运行的程序分析敏感函数打开字符串窗口编辑 跟进,光标点在command,Ctrl+x交叉引用,查看使用字符串的函数编辑 继续跟进编辑按下空格键切换为文本模式编辑发现函数地址在000000000040...
- 目录Fork函数原理Fork创建子进程getpid和getppid循环创建N个子进程父子进程共享哪些内容父子进程gdb调试exec函数族原理-execlp和execl函数execlp函数exec函数族的特性孤儿进程和僵尸进程孤儿进程僵尸进程wait回收子进程获取子进程退出值和异常终止信号Fork函数原理1.创建一个子进程返回值为整数没有参数2.父进程有的子进程都有,子进程执行fork();... 目录Fork函数原理Fork创建子进程getpid和getppid循环创建N个子进程父子进程共享哪些内容父子进程gdb调试exec函数族原理-execlp和execl函数execlp函数exec函数族的特性孤儿进程和僵尸进程孤儿进程僵尸进程wait回收子进程获取子进程退出值和异常终止信号Fork函数原理1.创建一个子进程返回值为整数没有参数2.父进程有的子进程都有,子进程执行fork();...
- 你脑海中的壳是什么壳在自然界是动物的保护壳,软件同样有保护壳,为了防止破解 也许大海给贝壳下的定义是珍珠,也许时间给煤炭下的定义是钻石 ——沙与沫壳的由来在DOS时代,壳一般指的是磁盘加密软件中的一段加密程序后来发展为... 你脑海中的壳是什么壳在自然界是动物的保护壳,软件同样有保护壳,为了防止破解 也许大海给贝壳下的定义是珍珠,也许时间给煤炭下的定义是钻石 ——沙与沫壳的由来在DOS时代,壳一般指的是磁盘加密软件中的一段加密程序后来发展为...
- 1 学习来源本系列笔记学习主要参考书籍《Docker-从入门到实践》以及结合官网的教程,仅作为个人学习使用;推荐大家阅读此书,感谢作者的书籍,学到了很多。 2 官方学习资源Docker 官方主页:https://www.docker.comDocker 官方博客:https://blog.docker.com/Docker 官方文档:https://docs.docker.com/Dock... 1 学习来源本系列笔记学习主要参考书籍《Docker-从入门到实践》以及结合官网的教程,仅作为个人学习使用;推荐大家阅读此书,感谢作者的书籍,学到了很多。 2 官方学习资源Docker 官方主页:https://www.docker.comDocker 官方博客:https://blog.docker.com/Docker 官方文档:https://docs.docker.com/Dock...
- 当您在Linux系统中管理进程时,了解一些进程监控命令是非常重要的。这些命令可以帮助您了解当前正在运行的进程以及它们的状态,从而更好地管理系统资源。下面是一些常用的Linux进程监控命令及其示例: 1、ps命令ps命令可以列出当前正在运行的进程的信息。以下是ps命令的一些示例:1.1 列出所有进程的信息:ps aux1.2 列出指定用户的进程信息:ps -u username1.3 列出指... 当您在Linux系统中管理进程时,了解一些进程监控命令是非常重要的。这些命令可以帮助您了解当前正在运行的进程以及它们的状态,从而更好地管理系统资源。下面是一些常用的Linux进程监控命令及其示例: 1、ps命令ps命令可以列出当前正在运行的进程的信息。以下是ps命令的一些示例:1.1 列出所有进程的信息:ps aux1.2 列出指定用户的进程信息:ps -u username1.3 列出指...
- C++ 多线程多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程。基于进程的多任务处理是程序的并发执行。基于线程的多任务处理是同一程序的片段的并发执行。多线程程序包含可以同时运行的两个或多个部分。这样的程序中的每个部分称为一个线程,每个线程定义了一个单独的执行路径。本教程假设您使用的是 Linux 操作系统... C++ 多线程多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程。基于进程的多任务处理是程序的并发执行。基于线程的多任务处理是同一程序的片段的并发执行。多线程程序包含可以同时运行的两个或多个部分。这样的程序中的每个部分称为一个线程,每个线程定义了一个单独的执行路径。本教程假设您使用的是 Linux 操作系统...
- 本节给大家讲解的是Activity中UI组件中的信息传递Handler,相信很多朋友都知道,Android为了线程安全,并不允许我们在UI线程外操作UI;很多时候我们做界面刷新都需要通过Handler来通知UI组件更新!除了用Handler完成界面更新外,还可以使用runOnUiThread()来更新,甚至更高级的事务总线,当然,这里我们只讲解Handler,什么是Handler,执行流程,... 本节给大家讲解的是Activity中UI组件中的信息传递Handler,相信很多朋友都知道,Android为了线程安全,并不允许我们在UI线程外操作UI;很多时候我们做界面刷新都需要通过Handler来通知UI组件更新!除了用Handler完成界面更新外,还可以使用runOnUiThread()来更新,甚至更高级的事务总线,当然,这里我们只讲解Handler,什么是Handler,执行流程,...
- 这里先抛出几个问题创建线程池会消耗多少内存和运行时如何抢占cpu 这里先抛出几个问题创建线程池会消耗多少内存和运行时如何抢占cpu
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签