指针 指针:带类型 类型指针,允许对这个指针类型的数据进行修改,传递数据可以直接使用指针,而无须拷贝数据,类型指针不能进行偏移和运算。 地址:内存地址,字节描述的内存地址 '&':表示取内存地址操作 ptr := &v // v 的类型为 T package main import ( "fmt" ...
分类:
其他好文 时间:
2020-07-12 00:45:07
阅读次数:
60
! ! setup.s (C) 1991 Linus Torvalds ! ! setup.s is responsible for getting the system data from the BIOS, ! and putting them into the appropriate plac ...
分类:
系统相关 时间:
2020-07-11 19:15:12
阅读次数:
75
线程是比进程更轻量级的调度执行单位,线程的引入,可以把一个进程的资源分配和执行调度分开,各个线程既可以共享进程资源调度(内存地址、文件I/O等),又可以独立调度。 线程的实现 主流的操作系统都提供了线程实现,Jav语言则是提供了在不同硬件和操作系统平台下对线程操作的统一处理,每个已 https:// ...
分类:
编程语言 时间:
2020-07-11 19:08:40
阅读次数:
50
toString方法 toString方法返回该对象的字符串表示 由于toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。 class Person extends Object{ int age ; //根据Person类的属性重 ...
分类:
编程语言 时间:
2020-07-10 18:42:49
阅读次数:
84
比较操作符'=='表示比较对象间的值是否相等,而'is'表示比较对象的标识是否相等,即它们是否指向同一个内存地址。 比较操作符'is'效率优于'==',因为'is'操作符无法被重载,执行'is'操作只是简单的获取对象的ID,并进行比较;而'=='操作符则会递归地遍历对象的所有值,并逐一比较。 浅拷贝 ...
分类:
编程语言 时间:
2020-07-09 19:36:44
阅读次数:
72
Python宏观 一概念梳理: 1.变量: 变化的量.量:衡量,衡量状态的变化 程序执行的目的:替代人类执行重复复杂的运算,那么运行过程中数据是不停的变化的. 任何一个变量都有 id+type+value height=90 id:变量在内存中的地址,但是内存地址不利于记忆,于是有了变量名. 变量名 ...
分类:
编程语言 时间:
2020-07-08 22:38:34
阅读次数:
71
概述用于查看某个进程的 mmap 内存。实例场景例如我想知道某一个 进程(pid)分配的内存的情况,分配了那些内存地址,总的大小又有多大,就可以使用 pmap ,根绝具体的例子可以查看 Spring Boot “内存泄漏”?看看美团大牛是如何排查的使用使用我们直接man pmap NAME pmap... ...
分类:
系统相关 时间:
2020-07-08 11:45:03
阅读次数:
76
memcpy与memmove的目的都是将N个字节的源内存地址的内容拷贝到目标内存地址中。 但当源内存和目标内存存在重叠时,memcpy会出现错误,而memmove能正确地实施拷贝,但这也增加了一点点开销。 memmove的处理措施: (1)当源内存的首地址等于目标内存的首地址时,不进行任何拷贝 (2 ...
分类:
其他好文 时间:
2020-07-07 00:02:26
阅读次数:
84
PE重定位 使得硬编码在程序中的内存地址随当前加载地址的变化而变化就是PE重定位. 若不添加重定位,而加载时内存地址被占用,则会出现"内存地址引用错误",使得程序异常终止. PE重定位的操作原理: 查找硬编码地址需要用到重定位表(Relocation Table),它是记录硬编码地址偏移的列表.是P ...
分类:
其他好文 时间:
2020-07-06 20:22:47
阅读次数:
58
要想理解它们俩之间区别,首先要了解一下它们的定义。 ==比较的是变量(栈)中存放的对象(堆)的内存地址是否相同,即是否指向同一个对象。比较是真正意义上的指针操作。 equals比较的是两个对象的内容是否相同,由于所有的类都是继承自java.lang.Object类的,所以适用于所有对象,如果没有对该 ...
分类:
编程语言 时间:
2020-07-05 23:10:25
阅读次数:
60