duangsuse::Echo
呃... 因为今天估计错了,然后现在要去上学 #school 所以赶快举个 r2 动态调试的例子来:赶快讲了你们学到了然后我就走的,那个下周说 (C 语言入门难度,真的) 首先我们的程序 #include <stdio.h> #include <stdlib.h> #include <string.h> static char *msg = "duangsuse 菜鸡\n"; int main(int argc, const char **argv) { char *str = malloc(sizeof(msg));…
那么就先写这个 r2 动态调试的简单教程,暂定使用 Markdown
duangsuse::Echo
那么呢,每周回家都有每周的任务,要不然会非常无聊 #life #tech #dev #daily #Learn #Java 每次呢看的书好像比较多,又都是轮流转结果可能最后一周完了枚举不出来自己看了什么书比较尴尬,大概是操作系统和嵌入式的,JVM 的也有,但大概是记住了吧。 📚 最近会开始掺杂一些文化课的书学习,由于 CS 的书看的比较多我发现自己的智商和认知理解至于记忆能力都有很大的提升(也可能是年龄关系,目前大概是 17 岁吧,和某 GAN(生成式对抗神经网络,14 年的)算法的 19 岁美国大佬少年还差两年,逃,当然和某些…
今天尝试
ESIL 调试没试过,但模拟执行都不行,Invalid instruction
反正就是我写了很多 rlang 命令,比如
反正很失败就是了,但我要努力做哪怕是让自己觉得失败的事情,失败是成功之母,学习如逆水行舟不进则退,害怕失败意味着技术止步不前。
CLI 的最完整,但动态分析老是有问题,甚至连
Cutter 的前端命令行都感觉有问题,一些命令没法用
Web 前端的也有问题,有时候 color escape 还还算不了
https://github.com/coreutils/coreutils/blob/master/src/yes.c
源代码,我一直以为没有那么复杂的... 其实非常复杂,不只是
明天再弄自己那个吧...
嘛,今天晚上再听点歌,前途似海来日方长,第二天原顺序执行,睡觉去喽~
r2 /bin/yes 了一下,最后除了找到了那个 'y' 字符之外就没啥了,调试的时候就很失败... r2 的模拟执行和实际 rarun 调试都不行,rarun 在打断点的时候会 unmapped location,让人感觉好像是过分的动态链接...ESIL 调试没试过,但模拟执行都不行,Invalid instruction
反正就是我写了很多 rlang 命令,比如
i*、d*、p*、v*、a* 什么的,结果只是没有效果... 我不知道自己在干什么反正很失败就是了,但我要努力做哪怕是让自己觉得失败的事情,失败是成功之母,学习如逆水行舟不进则退,害怕失败意味着技术止步不前。
CLI 的最完整,但动态分析老是有问题,甚至连
main 上断点都做不到Cutter 的前端命令行都感觉有问题,一些命令没法用
Web 前端的也有问题,有时候 color escape 还还算不了
https://github.com/coreutils/coreutils/blob/master/src/yes.c
源代码,我一直以为没有那么复杂的... 其实非常复杂,不只是
for (;;) { putchar('y'); } 而已明天再弄自己那个吧...
嘛,今天晚上再听点歌,前途似海来日方长,第二天原顺序执行,睡觉去喽~
GitHub
coreutils/src/yes.c at master · coreutils/coreutils
upstream mirror. Contribute to coreutils/coreutils development by creating an account on GitHub.
duangsuse::Echo
今天尝试 r2 /bin/yes 了一下,最后除了找到了那个 'y' 字符之外就没啥了,调试的时候就很失败... r2 的模拟执行和实际 rarun 调试都不行,rarun 在打断点的时候会 unmapped location,让人感觉好像是过分的动态链接... ESIL 调试没试过,但模拟执行都不行,Invalid instruction 反正就是我写了很多 rlang 命令,比如 i*、d*、p*、v*、a* 什么的,结果只是没有效果... 我不知道自己在干什么 反正很失败就是了,但我要努力做哪…
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
今天尝试 r2 /bin/yes 了一下,最后除了找到了那个 'y' 字符之外就没啥了,调试的时候就很失败... r2 的模拟执行和实际 rarun 调试都不行,rarun 在打断点的时候会 unmapped location,让人感觉好像是过分的动态链接... ESIL 调试没试过,但模拟执行都不行,Invalid instruction 反正就是我写了很多 rlang 命令,比如 i*、d*、p*、v*、a* 什么的,结果只是没有效果... 我不知道自己在干什么 反正很失败就是了,但我要努力做哪…
『当一个人发现自己已经不需要学习即通晓万物的时候,他的技术造诣就危险了』
『当一个人觉得自己是天才,天资异于常人但又不是经过客观评价而得出结论的时候,他就很难达到比较高的技术水平』
『当一个人会对别人的改进性意见产生负面情绪时,至少这表明他得独自完成改动枚举的过程』
(当然这个不涉及道德上的问题,纯技术性的
(其实,我觉得很奇怪,当然为了减少误会,我必须再次澄清一下,虽然貌似是针对某个人的(因为我确乎是根据自己的经历编造了几个,难免的),但其实我没有特殊的意思,只是泛泛的说一个群体而已。我相信这种人平时还是能遇到的
而对于 duangsuse 这种偶尔有些崩坏的而且不是天才而且其实身体条件未必够的人来说,首先的任务应该是考虑如何让自己正常活下去,再是考虑别的事情... 😶
『当一个人觉得自己是天才,天资异于常人但又不是经过客观评价而得出结论的时候,他就很难达到比较高的技术水平』
『当一个人会对别人的改进性意见产生负面情绪时,至少这表明他得独自完成改动枚举的过程』
『当你一直取得成功而从未失败的时候,你就应该静下心来反省,好好考虑是不是你做的事情太简单太机械化了』(固定句式,那个『他』当然是上文里的『那个人』喽,可惜我在考虑解析几何的时候没有这种理解速度...
(当然这个不涉及道德上的问题,纯技术性的
(其实,我觉得很奇怪,当然为了减少误会,我必须再次澄清一下,虽然貌似是针对某个人的(因为我确乎是根据自己的经历编造了几个,难免的),但其实我没有特殊的意思,只是泛泛的说一个群体而已。我相信这种人平时还是能遇到的
而对于 duangsuse 这种偶尔有些崩坏的而且不是天才而且其实身体条件未必够的人来说,首先的任务应该是考虑如何让自己正常活下去,再是考虑别的事情... 😶
duangsuse::Echo
接下来可以分析 BEL 具体是如何优化的(因为已经实现了 BEL,并且代码别无二致) 我们的 BEL 公式 LLVM 优化后是这样的: BEL: # @BEL lea eax, [4*rdi - 4] cdqe imul rax, rax, 1431655766 mov rcx, rax shr rcx, 63 …
曾经突然能理解 x86 CDEF 汇编调用栈维护
并且写出自己第一个真正意义上物理机线性 0~2 地址代码的时候
仿佛已经是在脑后,成为过去
工程好像没有时间,好像又不想工程
学的技能好像没有学...
永远就是这样的吗?每次攻克一个自己所谓的『难关』
增加一个新的技能,增加一组新的知识,增加一个新的知识系统
好像完成之后,就成为理所当然一样,成为自己下一个证明的既成条件
好像爬山一样,的确在往上爬,可是,有没有爬了一段后,突然忘记自己所在的高度呢?
... 最大的问题是自己都在学了什么东西?自己现在会什么东西?好像一个
连遍历都难啊
还是和自己的那些同学们一样,或许,他们也不知道吧... 或许有人知道自己学会了什么... 只是因为自学所以这样吗?所以我学到了什么呢?我是什么水平呢?可能是小应用都不会写的水平吧...
他们总是一年一年的玩各种新的手机游戏... 对了,我还不会 GLSL... 我不知道
其实我这段时间应该一直都是在打所谓的理解力基础,有了基础大概做什么都容易一些吧... 大概 😶
并且写出自己第一个真正意义上物理机线性 0~2 地址代码的时候
仿佛已经是在脑后,成为过去
工程好像没有时间,好像又不想工程
学的技能好像没有学...
永远就是这样的吗?每次攻克一个自己所谓的『难关』
增加一个新的技能,增加一组新的知识,增加一个新的知识系统
好像完成之后,就成为理所当然一样,成为自己下一个证明的既成条件
好像爬山一样,的确在往上爬,可是,有没有爬了一段后,突然忘记自己所在的高度呢?
... 最大的问题是自己都在学了什么东西?自己现在会什么东西?好像一个
WeakSet 集合,只能使用 contains(_) 方法(就是数学上的 A∍a, 中间这个符号叫 containsAsMember)连遍历都难啊
into_iter() -> !
我学了什么?What have I learnt?还是和自己的那些同学们一样,或许,他们也不知道吧... 或许有人知道自己学会了什么... 只是因为自学所以这样吗?所以我学到了什么呢?我是什么水平呢?可能是小应用都不会写的水平吧...
他们总是一年一年的玩各种新的手机游戏... 对了,我还不会 GLSL... 我不知道
vec2 和 vec4 是什么关系... color 又是什么...其实我这段时间应该一直都是在打所谓的理解力基础,有了基础大概做什么都容易一些吧... 大概 😶
https://ice1000.org/2018/12/08/SomeTweaks/
#blog #recommended #yearPassed
顺推隔壁的跨年笔记,当然,我不如他,所以,我都不知道我学了什么,PLT 反正也就是入门刚刚而已,因为我也才知道如何抽象程序逻辑,基本的 operators(+, -, *, /, add, contains, iterator 这种)、primitives(int, long, short)、markers([], *, ref, parametric polymorphic 等) 组合什么的,函数式也才是入门,然后就没有额外资本去学习高级类型系统方面的知识什么的
那么我明年的梦想是重新开一个博客,名字我都想好了,就叫 "IJKTree"
当然也建议大家都发一下自己的跨年笔记什么的(不要不写啊
#blog #recommended #yearPassed
顺推隔壁的跨年笔记,当然,我不如他,所以,我都不知道我学了什么,PLT 反正也就是入门刚刚而已,因为我也才知道如何抽象程序逻辑,基本的 operators(+, -, *, /, add, contains, iterator 这种)、primitives(int, long, short)、markers([], *, ref, parametric polymorphic 等) 组合什么的,函数式也才是入门,然后就没有额外资本去学习高级类型系统方面的知识什么的
谢谢各位读者对这个幼稚的博客的关注今年的跨年笔记我晚点写,因为今年真的... 很乱,真的... 学了很多,我尽可能枚举,利用 Telegram 频道的历史记录,这是我自己的感觉。欢迎喷啊
那么我明年的梦想是重新开一个博客,名字我都想好了,就叫 "IJKTree"
当然也建议大家都发一下自己的跨年笔记什么的(不要不写啊
duangsuse::Echo
https://ice1000.org/2018/12/08/SomeTweaks/ #blog #recommended #yearPassed 顺推隔壁的跨年笔记,当然,我不如他,所以,我都不知道我学了什么,PLT 反正也就是入门刚刚而已,因为我也才知道如何抽象程序逻辑,基本的 operators(+, -, *, /, add, contains, iterator 这种)、primitives(int, long, short)、markers([], *, ref, parametric polymorphic…
This media is not supported in your browser
VIEW IN TELEGRAM
#statement #TeX 顺便说一下,其实 #Microsoft Office Word 系列排版也很好的,TeX 某些扩展包可能排起来都有数学公式渲染问题,我上次那个
foo.pdf 的根号就不对
duangsuse::Echo
加油! #life #dev
(吐槽,即使在与理论系的巨佬们差距如此之大的情况下也要如此逞强吗?
(回复,巨佬尽管是巨佬,可能几年前也不过是菜鸡,我和巨佬之间... 还差几年的努力
(回复,巨佬尽管是巨佬,可能几年前也不过是菜鸡,我和巨佬之间... 还差几年的努力
Hinnka Zhou
有点不太理解这段代码,什么情况下泛型会被擦除,什么情况不会?
#PL #Java 哦,又想起这件事,这个 Java 8 OpenJDK/Oracle JDK 的泛型(Generics aka. Parametric Polymorphism 也即参型多态)实现的确是基于擦除法实现的,换句话说泛型在 Java 8 里就只是提供
当然泛型这个不难理解,就拿
然后如果我们放
C++ 就是
高级一点的话就必须得学习泛型的 variance (型变性,说白了就是填的泛型参数和 subtype (子类型)之间的关系) @imKiva 那有一篇博文,推荐阅读,当然我不直接给链接(跑)
当然因为 Java 的泛型是虚泛型所以也会有一些诸如语言和字节码层面方法重载(overloading)的问题什么的,比较麻烦,JVM 的书可能都会讲关于虚泛型的事情
据说有些 JVM 开发者是持极端反对虚泛型(就是擦除法实现的泛型)的态度的(比如,吐槽性能不如 CLI 系的真实泛型好),目前 Kotlin 的
Wiki: Java 的泛型特性
自动类型转换和类型检查的语法糖,运行时 checkcast 还是照样得检查类型(也可能不用,因为类型系统确保了 interface Map<K, V> 的 V get(K) 方法返回的肯定是 V 类型的值,因为 void put(K, V) 方法有类型限制,所以拿到的肯定是符合限制的对象,静态强类型系统设计的一个很突出的特点就是可以完成执行效率的优化,消除不需要的类型检查),包括 18 年的 Oracle HotSpot(目前『官方』 JDK 的默认虚拟机) 25.x 和 Dalvik 1.1 (Android 上 Java 应用的运行时,当然不是 JVM,这里用作对比)都没有真泛型支持,虚拟机上基本可以说是没做什么改动,Dalvik 这清奇平台我不熟悉(我目前不常接触 Android 开发,实际上我工程的时候都很少很少很少,当然我不是不能学),HotSpot/JRockit/J9 之类的是随着新的 JVM 标准改了,就是 JVM 们支持 Signatures classField (ObjectWeb.ASM Parser) 部分,反射用的元数据也是从那拿到的(Java 1.8 之后大概 Sun javac 是会保存元数据的(可以拿 javap <className> 指令查看类元数据),显而易见地),这位老哥可能是对泛型擦除这个术语产生了误会(原意就是字面意思,编译完成后泛型被『擦除』了,在那部分字节码里不存在,也即和没有使用泛型的字节码一样),当然我后面也说了。当然泛型这个不难理解,就拿
List<T> 说,比如我们有 LinkedList (我不理论系,所以不懂 CoinductiveList 这些东西,也不知道啥是规约...)(破真)data class LinkedList(val obj: Any?, val next: LinkedList?)显然我们可以给这个对象添加一堆操作比如
T get(int)、void set(int, T) 什么的然后如果我们放
String,结果 get() 返回的是 Any,就得强制暴力转换(as String),非常的不爽,这时可以理解为 LinkedList<*, *>
这样又 checked 又可以避免强制转型,多好C++ 就是
template<typename T, typename R> (这里 template 和前端的模板差不多,自动生成代码的意思)实现的泛型,当然 C++ 比 C 多少还是高级很多(高级一点的话就必须得学习泛型的 variance (型变性,说白了就是填的泛型参数和 subtype (子类型)之间的关系) @imKiva 那有一篇博文,推荐阅读,当然我不直接给链接(跑)
当然因为 Java 的泛型是虚泛型所以也会有一些诸如语言和字节码层面方法重载(overloading)的问题什么的,比较麻烦,JVM 的书可能都会讲关于虚泛型的事情
据说有些 JVM 开发者是持极端反对虚泛型(就是擦除法实现的泛型)的态度的(比如,吐槽性能不如 CLI 系的真实泛型好),目前 Kotlin 的
inline reified generics 特性好像是给了 JVM 应用们一个『方法反射真泛型』的机会,当然我后面也有举例子(当然也可以利用 companion object 的 operator invoke() 伪造类 constructor 的真泛型,这个小 hack 当然是从 ice1k 的博客上看到的,某次成都线下 Kotlin 同好讨论会 )Wiki: Java 的泛型特性
TypeArguments:
< TypeArgument {TypeArgument} >
TypeArgument:
[WildcardIndicator] ReferenceTypeSignature
*
GitHub
unofficial-openjdk/openjdk
Do not send pull requests! Automated Git clone of various OpenJDK branches - unofficial-openjdk/openjdk
duangsuse::Echo
优化版的盒子堆(Haskell)(因为 InScript 还没有形式化的被定义出来,也暂时没有人实现它,我想看到自己的程序实打实在电子计算机而不是我的脑子里运行起来 XD): 😸 其实这玩意是我从《算法图解》(内容简单像「故事书」,其实教的东西大学里都要上,体现了知识系统相同表达教学方式简单一点的确可以让学习更高效)里弄的一个伪代码例子 可出对应 OI 题,不过就是那种小学生都会写的那种(迫真),好吧,我不知道现在 OI 生们都是啥水平,有没有 OI 生给我科普一下?排序算法理解否?各种图各种树算法会否?动态规划…
这只是递归下去了... 压根没有回溯回来,我当时设计的是想要副作用打印路径的说,要回溯的话得传当前路径,设计返回值
好像的确回溯了... 但是层次做的不对没有考虑到...
好像的确回溯了... 但是层次做的不对没有考虑到...
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta #wontfix)
试了试 SysRq 的 E-I-S-U-B 键,好用的很,重启靠它了(x
S-U 按完看了下 dmesg,报了几个 Ext 错误,慌的一笔(怕挂硬盘... 以前电脑硬盘就挂过一次......
不知道紧急同步(S)挂载(U)会不会伤硬盘.....
S-U 按完看了下 dmesg,报了几个 Ext 错误,慌的一笔(怕挂硬盘... 以前电脑硬盘就挂过一次......
不知道紧急同步(S)挂载(U)会不会伤硬盘.....
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta #wontfix)
太高产了,一早上又整了几个 Docker image: https://github.com/Trumeet/Bup-Docker
GitHub
Trumeet/Bup-Docker
An unoffical docker image which wraps Bup. Contribute to Trumeet/Bup-Docker development by creating an account on GitHub.