小万哥 小万哥
9个月前
掌握 C++ 编译过程:面试中常见问题解析
C编译过程C是一种高级编程语言,但是计算机并不能直接理解它。因此,需要将C代码翻译成计算机可以理解的机器语言。这个过程就是编译过程,是C程序从源代码到可执行文件的转换过程,包括预处理、编译、汇编和链接四个阶段。1.预处理在编译器开始编译之前
volatile 关键字说明
volatile变量修饰的共享变量进行写操作前会在汇编代码前增加lock前缀:1),将当前处理器缓存行的数据写回到系统内存;2),这个写会内存的操作会使其它cpu缓存该内存地址的数据无效。Java语言volatile关键字可以用一句贴切的话来描述“人皆用之,莫见其形“。理解volatile对理解它对理解Java
HCl4y HCl4y
3年前
XCTF when_did_you_born
使用file查看文件是多少位可以看出是Linux系统下的64位ELF文件用checksec检查文件保护有金丝雀(canary)还有堆的保护运行程序当输入数据过长时,显示程序段错误,直接崩溃了,说明是可能存在栈溢出的,但是存在canary保护,可能不是直接溢出IDA中汇编出伪C代码输入v5如果是1926直接退出,如果不是再用ge
Souleigh ✨ Souleigh ✨
4年前
10分钟学会python函数式编程
在这篇文章里,你将学会什么是函数范式以及如何使用Python进行函数式编程。你也将了解列表推导和其它形式的推导。函数范式在命令式范式中,通过为计算机提供一系列指令然后执行它们来完成任务。在执行这些指令时,可以改变某些状态。例如,假设你最初将A设置为5,然后更改A的值。这时在变量内部值的意义上,你改变了A的状态。在函数式范式中,你不用告诉计算机做什
Wesley13 Wesley13
3年前
mysql监控
服务器监控  查看mysql性能SQL语句    mysql的基本指令    SHOW INDEX FROM<table:用于查看数据库表上的索引技术    SHOWPLUGINS:查看mysql的插件,例如搜索引擎    SHOW\FULL\ PROCESSLIST
Stella981 Stella981
3年前
Git 的使用方法
使用前的准备一、进入.ssh文件夹。cd~/.ssh//若没有.ssh文件夹,则使用如下命令创建:mkdir~/.ssh 2、手动设置email和用户名则指令如下:gitconfigglobaluser.name"myname"gitconfigglobal
Stella981 Stella981
3年前
Dockerfile构建镜像及相关命令
Dockerfile镜像描述文件Dockerfile是一个包含用于组合镜像的命令的文本文档Docker通过读取Dockerfile中的指令按步自动生成镜像dockerbuildt机构/镜像名<:tagsDockerfile目录Dockerfile基础命令FROM基
Stella981 Stella981
3年前
Kubernetes使用命令
kubeadm/kubelet/kubectl区别kubeadm是kubernetes集群快速构建工具kubelet运行在所有节点上,负责启动POD和容器,以系统服务形式出现kubectl:kubectl是kubenetes命令行工具,提供指令Kubernete
Wesley13 Wesley13
3年前
PHP底层的运行机制与原理
PHP是一种适用于web开发的动态语言。具体点说,就是一个用C语言实现包含大量组件模块的软件框架。是一个强大的UI框架。简言之;PHP动态语言执行过程:拿到一段代码后,经过词法解析、语法解析等阶段后,源程序会被翻译成一个个指令(opcodes),然后ZEND虚拟机顺次执行这些指令完成操作。PHP本身是用C实现的,因此最终调用的也是C的函数,实际上
Stella981 Stella981
3年前
JVM系列【6】GC与调优6
JVM系列笔记目录虚拟机的基础概念class文件结构class文件加载过程jvm内存模型JVM常用指令GC与调优GC常用参数\XmnXmsXmxXss年轻代最小堆最大堆栈空间\XX:UseTLAB使用