duangsuse::Echo
583 subscribers
4.12K photos
118 videos
579 files
6.13K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
#Huawei 我觉得鼓吹微内核 是不必要的
用就用,吹个什么劲呢?
而且这是他提出的?需要我去找 wiki 吗?虽然我不是 os-dev,但什么概念不概念骗不了我,微内核结构崇尚内核层只做尽可能少的工作、提供必要的系统服务和限制比如 CPU 调度、进程管理、内存管理、驱动 IO 交互分配,把更多诸如硬件驱动、文件系统、网络栈的任务和高级服务做在更高的 Ring 或者用户空间,这个概念,使用 Rust 开发操作系统内核的人早就知道了,诸多 os 学生也都知道它不是什么新概念,这,拿来吹?

也就是说,手机和车载设备的用途不同,灌入同样系统无必要,但它们可以采用同样的内核,部署不同的界面或功能。

这 TMD 不是废话,Linux => GNU/Linux 不是最好的例子,能够是中国人提出的『概念』?该向计算机视觉领域的杨立昆学习,人家的卷积神经网络是新概念。可惜虽然是中国人,却只是华裔,可惜啊可惜。

在本土长大的中国人也不蠢,可缺的却恰恰巧是『蠢』的精神,有些时候太看重『得失』了、太看重一小块地方了,像什么呢?

吹个什么劲呢?不如好好看看,新系统改革了什么、不兼容了什么、出来应用层该去怎么解决、性能还能怎么优化,还有多少协议、硬件驱动、服务要支持,有多少结构设计有问题不得不慢慢废弃

余承东表示,希望未来的操作系统,都使用微内核。
所以我也希望未来的计算机微处理器,都使用 RISC 架构。辣鸡 CISC。
我希望以后就不要用 MCU 了,要是都用 PLD 用 VHDL Verilog 什么的设计程序就好了
我也希望大家都去使用 IDEA,Emacs 什么的是被抛弃的东西,他们没有用处。
我也希望你们都去使用 Linux,其他什么杂牌 比如 JRockitVE 就算了,不需要 🌚
毕竟这不都是 IoT 时代么,所以,不需要不为 IoT 优化的东西
当然,我的话前提是:这位大牛声称微内核概念是他提出的,他是没强调是『首次提出』,营销真妙啊

这是分布式架构首次用于终端 OS 可以实现跨终端无缝协同体验。
嗯,所以说 Internet 就不是分布式架构了,看来 IETF IEEE 的”傻逼“们几十年白干了,就缺你们伟大的创新,厉害了。加油。
当然,如果是 IoT 短时延分布式计算就算了

确定时延引擎可在任务执行前分配系统中任务执行优先级及时限进行调度处理,优先级高的任务资源将优先保障调度,应用响应时延降低25.7%。

你说的好像是 RTOS 处理资源调度的时候一个常见的优化,不过确定时延的确是实时操作系统的特性了 🌚
确定时延,如果硬件的延迟不能确定,调度往往也会失败的,这是『软实时』
优先级这不用说,大概是除了 DOS 这单任务 OS 谁都有,就连当年的 Apollo 11 AGC 使用的进程调度程序都有优先级抢占的功能 🌚

鸿蒙微内核结构小巧的特性使IPC(进程间通信)性能大大提高,进程通信效率较现有系统提升5倍。

不错,这点是微内核架构的优势,5 倍也很正常啊,UNIX 系进程贼 ***

谁告诉你们,『mobile/watch/car/laptop』不可共享『生态』了?我看这个生态系统,如果不是在中国这个只需要 『QQ 王者 微信 微博 抖音 头条』的地方,怕不是要成为生物圈 II 吧 🌝

什么?你们居然把 OSI 7 层架构和类 IP 架构拿来比,还是作为自己的『优势』??? 🌝

OSI: 0@[物理层 数据链路层] 1@[网络层 传输层 会话层 表示层] 应用层
IP: 网络访问层 网络层 传输层 应用层
华为: 1=『极简协议』(我开始怀疑是不是明德扬做的 emmm)

🤔 这种拿十年前技术的劣势绿叶衬红花,来体现出自己的高明... 我只能说,好营销!


不过那个计算资源分布式最大化利用还是比较好的,大概是创新(也有可能只是我之前没听说过)

不过,如果前提是,必须都是鸿蒙的话,如果不开放的话 🌚 不得不说,大厂『良心』啊!


形式化方法。哦,我还是第一次知道原来华为内部有函数式程序员 🌚
打算怎么形式化证明?SMT?
自写公式翻译器保证正确?

另外,谁告诉你们 Linus 对 Linux 的安全很不负责了?谁告诉你们 OpenBSD 因为没有『形式化方法』就怎么样了?
这个 flag 立的不错,贬低别人和夸赞自己相结合,这很中国。不过我想说,Linux 的代码质量可真不是吃素的,他们也是以『形式化方法』的质量和理论要求每一行代码。


运行时库也能统一,就说明你们根本没做过包管理,要不然就是营销那边得到的技术支持太少了,厉害了 🌚👍



总之:目前还是观望。批判辣鸡营销。Harmony 是 12 年上海交大早就立项的,期待稳定和创新、希望软件环境的问题可以解决,并且都有他们说的那么好。
总结:静观其变。蛤为的 HarmonyOS 现在还没有正式开源,里很多 related resources 和项目开源大概还需要几个月的时间吧。 #Huawei
#China #Huawei #Haha 🐸 蛤为!「真香!」
Forwarded from duangsuse Throws
https://www.eet-china.com/news/201907231509.html #Huawei 🤔

#life #China #recommended
在《第一时间》杂志上看到一个无线通讯的天才少年,推荐过来
申怡飞 (文)
当然,其实关于这个『天才』是不是一定要『少年』呢…… 其实一般个人会有个人的看法
国家之前特别弄过『少年班』的,可是发现这样出产低,而且会浪费一些不是极端优秀但很不错的人,出产的天才少年也未必比其他天才好很多

这个人是独立弄的,所以的确是从小就天才。

当然,现在揠苗助长的事情实际上还有一些,比如那个考上大专(通过高考)的十岁女孩……
按照这位父亲的看法,中国的教育肯定辱没了很多『天才少年』
可是刻意要生造出那么多天才少年干什么呢……

我个人非常想当一个天才,因为天才意味着…… 我不仅有很强大的计算和抽象、组织能力,而且还很快…… 不会错…… 可是终究不是天才,我要花很多时间来完成简单的事情,太可惜了(虽然一般来说天才是极少的)
而且这样的话我就可以更快地开始学信号处理和机器学习了,这两者对数学能力有要求,所以还不是很熟悉。
#Low #China #Huawei 华为真还不如王垠,王垠都比华为实干(比率上)
Forwarded from duangsuse Throws
#China #Huawei #PL #ce 打住,据说冰封哥和蛤为方舟编译系统没半毛钱关系,不过我是在 Q 群里看到他说有研发方舟的朋友的。

顺道给各位没听说过的科普一下,常见的编译优化(这里不局限于 JVM 平台,而且我和 JVM 的实现也没太大关系,尽管我会偶尔思考一下线性指令序列的控制流和高级控制结构的关系)
constant-propagation & constant-folding, dead-code-elimation, inlining, instcombine(当然也包括 jmp 指令的), loop-unrolling, loop-reversal, loop-inversing, loop-invariant-code-motion(LICM), tail-call-optimization(TCO), , global-value-numbering(GVN), common-subexpression-elimation

有些过于直白的优化就不用看了,当然也不必看。(你自己应该会写)
+ cp/cf 系可怜的 Javac 都有的优化,不信你试试:
  id=`uuidgen`
echo 'class CostFold { String ing() { if (true) return "+"; else return "-"; } }'>/tmp/${id}.java
javac /tmp/${id}.java -d /tmp
javap -cp /tmp -c CostFold
辣鸡 Javac 不接受非 Java 扩展名的输入!
+ dce 我学过基于 BFS(breath-first search) 对 LLVM 的 Value ADCE 的,不过再高级一点的输入 ADCE(激进 DCE) 也就是走一遍到集合 {used} 然后取补、删。(苏格拉底都问过学生同类问题:苹果林里你不走一遍是不知道哪颗苹果树绝世而孤立的…… emmm怎么感觉有点不对?)
+ inline 就是 inline function 呗,很多优化的效果都依赖这个优化(外部到局部)
+ instcombine 不是标准的名字(LLVM的),比如合并赋值+一串jmp,就是 Lua 跳转链表
+ unroll 就是展开。reversal 和 inversing 的区别是,reversal 就是你从 N 数到零可以用类似 decrease-jumpIfZero(DJNZ) 这种指令(反之;<n;i++这种不行)、inversing 的意思是
  while-p: ...; br.not :while-broke
(your code)
jmp :while-p
while-broke: ...
<=>(可代换)
br.not :while-broke
do-while-cont:
(your-code)
...; br :do-while-cont
while-broke: ...
就是 while () {} 翻译成 if () do {} while (); 的意思了,根本区别在于 br 指令不必 jmp 后执行,据说在流水线上有好处。

知道循环为什么叫循环吗?因为 jmp, br 指令可以随意重置指令指针,使得下条指令可能是jmp的前驱(或者说它可达这条jmp),扭转程序往下执行的趋势。
知道我们在生成 br.not :broke 代码的时候为什么能够知道 while-broke 的位置/偏移吗?可以用回填啊,Lua 的跳转链表也解决了回填问题

+ LICM 包含说的 loop-expression-hoisting.

高级一点的,比如 LLVM(low-level-virtual-machine) 的 Alias-analyzing (特指 C/C++ 这种 union 弄不清指针到底是什么的语言, 当然 C++ 默认策略也不能直接做到 exact memory management), Vectorization: SLP(superword-level-parallelism) 和 loop vectorization
编译策略上(基本是JVM/CLR里有的),比如 JIT(just-in-time), AOT(ahead-of-time), on-stack replacement, hot-spot dection
JVM 上常见的,比如 de-reflexing, unboxing, range-check-elimation, null-check-elimation, branch-frequencey-prediction (从《深入理解Java虚拟机》书上精选的)
程序员自己要做 profile-guided optimization(PGO) 和算法选择上面的研究(这样学术一点的就得用到函数增长率,普通一点的比如我就会选择口碑好的emmm)。

不知道算了,可以自己到 wiki 上查,不过如果你能够默写 The Little Schemer (不要问我为什么总拿这本书说话,这里是刚好合适,一些优化不一定需要很厉害的算法) 的列表处理例子,基本上就可认为是有足够技术水平去实现了


既然我都说了这么多了,那再顺便提及一下『汇编』吧,虽然我一个弄软件的也不知道太多。
一般来说汇编还是要分 instruction structure architecture(ISA) 的,可以按地址归类为 0, 1, 2, 3 地址
举个例子,比如加法运算吧。(1+2) * 3 (=9)
  ldc 3
ldc 2; ldc 1; isum // 当然这里用的是逆记法,因为弹(pop)出来的是最后压(push)上去的,尽管我们希望 (1) 先被求值。
imul
零地址一般就是说 JVM, Ruby YARV, CLR 这种以 last-in-first-out(LIFO)「栈」 传递参数的架构
(accumlator) plus 1; (accumlator) plus 2; (accumlator) times 9
1地址现在很不常见,早期可能在还没 programmable-logical-device(PLD) 的时候繁荣过一时
你可以设想一下,即便 (1+2)*3 还是 1+(2*3) 都没问题(因为只是计算结合顺序变了),如果我们是要 a = a + f(a) 照这种法子要怎么办?
如果你要设计一个温度计,同时支持摄氏度华氏度显式,所以你的 f(x) 是算偏差量的函数,这时程序你又该怎么写?效率又怎么样?
add A, 1; add A, 2; mul A, 9
2 地址现在很常见了,就是 reduced-instruction-set-computers(RISC) 的芯片们,比方说你 armv7/v8 的手机,当然 hard-float(hf) 与否无关。
3 地址一般就是 dst, src1, src2
add A, A, 1; add A, A, 2; mul A, A, 9
当然我举的例子在 Java 里貌似都是常量表达式?
我们常说的汇编一般认为是当年个人机所用 x86 架构处理器,是3地址。

『汇编』很多时候都会有类似这样的指令:
ldc — 存储常量
ld, st — 读取/写入待操作的对象
mov — 读取和存储的 combine,也就是 copy
别和 "clone" 搞混了,clone 一般是对聚合量(product value)
jmp — 直接指定下一条指令的位置,一般用于循环
br — 分支,如果存储里是「真(truthy)」值
br.not — 分支,如果存储里「非真(falsy)」值
op — 以待操作的对象,实际执行操作
操作有可能有值,一般会被送到存储中(比如 JVM 里就是栈顶)

call — 调用,移交控制权给目标子程序并且待其完成。
alloc — 分配一定大小的栈帧本地存储
ret — (被调用者 callee)从自己的栈帧返回到 caller,本帧分配(alloca)的存储作废。
在有「调用栈层次」的机器里,一般 ld/st/mov 都会有一个所谓的「存储层次」。目的是,某个子程序可以访问调用者给自己的参数。
对应地,call 也会有一个所谓的层次参数指定新调用的层次。
这个过程需要依赖对调用栈 (底,顶) 或言 (b, t) 的维护。
某些机器有「寄存器窗口」,它意味着每个 call 都能够得到自己的一组寄存器。

可以看看 Wiki 的 PL/0p-code,之前我在 USTC 的 CE share 里看到了 PL/0 实践教程的文档,好像是被撤下了?
#Huawei #Android #web #Low #China 真是在给中国抹黑,一个平台 SDK 弄成这样
#os #android #backend #huawei 总的来说,可执行格式和渲染上还是有转移和割席的,但是还太少,所以说像酵话
#android #huawei #haha 😂👍 用仨梗,精甚细腻,“我现在只叫鸿蒙没有 Android 啊”
#huawei #doc https://tttttt.me/berd_channel/2618?single 5G 秘诀:搜索设置项 "SA" (GLES MSAA 抗锯齿) 🌝🤔
duangsuse::Echo
明晚7点就是验收日了,我把一小段稿子贴这: 对动苏,无论如何计划好的文章会码完的。我本来就计划写 Java 入门,如果能乘上这次机会,或许会有不一样的收获。虽然人少但回形针前端也是非常靠谱的 <[^编程]是什么,许多大学毕业生也无法回答这个问题。许多人认为程序就是代码、Java代码、C代码,编程=写代码=“编码”,没有意识到 __代码背后的「目标领域」及其上「概念」__,其实,编程是从基础API(如List,int,..)用语言的定义结构(如变量,函数,类)和控制结构,实现自己的应用领域(Android…
奇怪的内容增加了…… 写在尾声里 #china #huawei #Android 😂

>不能作为工作,为啥还要干呢?
<不能作为 job,work 意义的工作,但可以作为 career ,和找工作是不冲突的。 Linus Torvalds 就是在MIT开源他的代码后得到社区的帮助和新功能,从而把 Linux 做到华为都摆脱不了的流行度

>华为的技术都是原创的,鸿蒙操作系统完全技术自主,摆脱了 Google 的技术垄断、打脸了邪恶资本主义
<没有人的技术是100%原创的,但每个小论坛的权限都能100%自主。我可以一边用小A的开源代码和软件包/框架格式一边在娱乐平台宣称全我掌控,这不违反软件著作权。开源社区没有垄断一词,你们也没见过硅谷的真 Google 和AOSP,百度很强,也不够对标那个Google。这是陈述句。

>华为有几百个数学和物理博士、天才,夜以继日在研究各种新硬件和5G+
>B要是用那么多天才就能成功就好了。只可惜天妒英才,不肯把更天才的天才降下来改善大家的生活、解决领域无解的问题、分担大家的责任、治疗癌症或狂犬病,所以你才必须来这里学编程,而不是由天才做游戏发Steam玩着玩着就啥啥都懂了,对吗?
<英雄不总是博士和天才,也可以是挺身而出的普通人。
>中国需要华为!老师,我听他们说的
<中国更需要强大。而强大不会永远停在某处,靠风口无法定义真理,实践才能。 百度echarts、阿里飞天/OceanBase、都是称得上中国智造的平台工具。

>屁股决定脑袋,老师,我质疑你人民立场不正,是为西方资本主义说话!
>B老师,问号羊这也是代人提问:我们做科普的,没有正确的价值观和正能量,知识多了也会害人吧?
<若立场决定真理,中西间的学术 只是疯话场,只要骂死你就我对__。 现代技术是工具、是进步文化,不要默认人讲话是邪恶的、不要戴着傲慢的眼镜看别人,看他一个完整历史。 觉被轻视者也瞧不起自己,__拒绝交流就敌对,恰恰是最傲慢的
<我们就是人民。而我更是计算机爱好者,我在做我为国该做的正能量。 无解不可怕、一叶障目失去未来才要命。
<我不想作过多解释,只劝大家对党同伐异的“锤人”多长个眼,精挑细选的伪事实比谎言、伪科学更可怕。科学话题的全面性,需要大家的保护。
科技圈🎗在花频道📮
华为Harmony OS 4.0版本将于8月正式发布 来源:新浪微博 投稿人:Arkansas State Police 投稿:@ZaiHuaBot 频道:@TestFlightCN
#huawei #js #ts 最近很火的 ArkUI 跨平台版 (UI语言doc )
商店示例:
https://gitee.com/arkui-x/samples/blob/master/Shopping/entry/src/main/ets/model/homeModel.ets

ArkTS和Java没有相互调用的能力,需要ArkTS与C++交互,C++再与Java交互(剪贴板、文件,.),反之亦然。
看起来和方舟无关,也不需要Dart那样的虚拟机或 jvm ,基于 Node-API 但自己做绘制? 还是自己又弄了DOM?

但是 puerts (js,lua) 可以.. 虽然都不如 import cffi 直接解析.h头文件 强 😅

好像也没有很火,在文件名都需要审核的 Gitee 上以 Apache2 开源,想必也没什么正经人看.. 😓

btw. 人家还讲了 状态注入, MVVM

反正我只认同 type UI=({dataVars})=>HTMLvar
#huawei 虽然API上各方面都没啥突破(亦如ark.ts),但这个demo tutorial举例比rust,go的更有趣

可以说团队的脑子没有被八股文的驴踢 #锐评
https://tttttt.me/dsuses/5319
#huawei #apple:
逆天私有化😅😅
扩容下硬盘,电脑变成「砖」了。 把嵌入式禁锢用户、以人为本的操作狠狠移植了一波

鉴定为自己租来没有产权的 电动车🙉

:
这玩意的ssd里写了sn号
现在都没开放类似苹果configurator的东西

:
抄顶 HomoOS 的卡脖子技术,这辈子有了

买了个活爹,数字垃圾报废计划,几万块钱三年一换的
Please open Telegram to view this post
VIEW IN TELEGRAM