Frossky 发布的文章
家用伤口消毒剂的使用方法
看到央视转发腾讯医典的文章,确实这些年都用错了. 当然也可能是医学不断有新知, 跟计算机一样,旧的知识过期很快.
参考: https://mp.weixin.qq.com/s/ynM7asQa445TbMG9vgnEIg
现在开放伤口消毒的唯一推荐就是碘伏. 伤口冲洗推荐是清水.
| 类型 | 成分 | 用途 | 禁忌 |
|---|---|---|---|
| 医用酒精 | 乙醇+水 | 皮肤消毒 | 不可用于开放性伤口消毒 |
| 碘伏 | 碘络合物+水 | 伤口消毒 | 碘过敏和甲亢禁用 |
| 碘酒 | 碘/碘化钾/乙醇 | 皮肤消毒 | 碘过敏和甲亢禁用 |
| 双氧水 | 过氧化氢 | 伤口冲洗 | 对组织高毒性,结痂期禁用 |
| 红霉素软膏 | 1%红霉素/液蜡/凡士林 | 治疗和预防皮肤感染 | 超过1周使用会耐药 |
另外,百多邦喷雾中主要有效成分是苯扎氯铵, 杀菌效果很好,但长期大量使用(如消毒巾中使用)会导致哮喘等过敏性疾病, 孕妇使用导致胎儿畸形 参考文档
已禁用的消毒剂:
- 红药水: 汞溴红, 含汞, 会引起汞中毒, 并且没什么消毒作用, 不知道这玩意儿怎么用了这么多年
- 紫药水: 甲紫/龙胆紫, 有一点点消毒作用, 可以使皮肤提前结痂, 但安全性同样有问题, 吸收后可致癌
另外, 酒精已经是一类致癌物了, 甚至还是癌症的主要原因.
后知后觉,原来jsdelivr去年就ban了
如题。
参考文献:
https://blog.csdn.net/u013014254/article/details/122045331
https://blog.csdn.net/qq_29654777/article/details/122903558
国内替代如下,以vuetify资源搜索为例:
bootcdn, 问题是不知道怎么找历史版本
字节cdn,虽然界面简陋了点但是很好用,速度快且支持历史版本
基于七牛的staticfile,搜索比较慢,也找不到历史版本
ban了以后才知道jsdelivr有GitHub加速功能。
如何在代码中禁用Gcc告警
参考: https://stackoverflow.com/questions/3378560/how-to-disable-gcc-warnings-for-a-few-lines-of-code
http://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html
示例如下:
#pragma GCC diagnostic error "-Wuninitialized"
foo(a); /* error is given for this one */
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wuninitialized"
foo(b); /* no diagnostic for this one */
#pragma GCC diagnostic pop
foo(c); /* error is given for this one */
#pragma GCC diagnostic pop
foo(d); /* depends on command line options */ javascript文字转语音引擎 speechSynthesis
参考文档
speechSynthesis是浏览器自带的功能,甚至都不需要单独去安装。当然也有可能有的浏览器不支持。
最简单的三行代码:
var msg = new SpeechSynthesisUtterance();
msg.text = "你好,世界!"; //直接支持中文
window.speechSynthesis.speak(msg); python 文字转语音引擎 pyttsx3
pip install pyttsx3
我在MacOSX上安装的,是python2, 有很多语音,需要找到对应的语音。
engine = pyttsx3.init()
voices = engine.getProperty('voices')
for voice in voices:
if voice.languages == [u'zh_CN']:
engine.setProperty('voice', voice.id)
break
engine.say(u'The quick brown fox jumped over the lazy dog.中华人民共和
国。')
engine.say(u'我爱北京天安门,天安门上太阳升。')
engine.runAndWait() 在服务器上开了一段时间的TCP服务器收到的恶意攻击
用js的netcat库写的, 很简单, 只是记录一下收到的消息, 用了一个很不常见的socket. 开了半年多, 发现几乎每天都能收到一点攻击.如下:
- 攻击thinkphp的: Cookie: mstshash=Administr针对thinkphp的远程代码执行漏洞进行的攻击
- 似乎是要爬取数据的: User-Agent: iPhoto/9.1.1
- 扫描nmap漏洞的:
GET /nice%20ports%2C/Tri%6Eity.txt%2ebak HTTP/1.0Malicious request intercepted by spring - 扫描SIP漏洞的:
OPTIONS sip:nm SIP/2.0 Via: SIP/2.0/TCP nm;branch=fooJust a Reminder, SIP is a Popular Scanning Target
还有很多其他找不到是什么攻击的. 能看得出来是有攻击软件在定时扫描, 定时周期为5秒或者10秒.
所以互联网上只要开着服务端口就必然会有攻击找上门来.
bash, make, cmake, ninja等等之间的区别
windows上我用bat做编译,烧录, 复制文件等等操作. 所以好奇make和bash(Linux上更强大的bat)究竟有什么区别?
参考这篇文章, 高赞回答似乎是说make主要是能节省完全重编译的时间, 方法是通过检测编译所需要文件的更新日期, 并且只编译其中较新的文件.这在有成千上万个文件需要重新编译的时候会很节省时间.
所以大体上来说, makefile文件和bash脚本文件功能差不多, 只是makefile多了上面的能力.
当然, 据说makefile的语法非常令人讨厌,不如bash语法那么爽。
make与cmake的区别
参考这篇文字, cmake是与make配合使用的,它其实是生成makefile的工具,不止如此,还能visual studio工程或其他工程, 简单来说就是跨平台的工程文件生成工具。所以,make是编译系统(build system),而cmake是编译系统的构建器(build system generator).
ninja与make的区别
ninja是一个make的替代产品, 主要是解决make启动缓慢和功能复杂(过于强大)的问题
兔子们搞钱策略转向
三十年河东三十年河西。兔国初代目追求平等社会三十年,搞钱实在不太行。次代目让有条件的兔子先搞钱,政策至今也四十多年了,基尼系数大得不行。如今大概新的三十年又要开始了,基尼这玩意儿得要降,理想是最好没有。这个怎么搞?是不是学习初代目?兔子们很平等,一样有钱也一样没钱。当然初代目手里没多少底牌,当代目手里底牌要多一些,是不是可以实现?比如按需分钱?太有钱的还不服管的兔子,是不是坚决干掉?如何让普通兔子都同样有钱?
(原创)金融的本质和本性
早上忽然想到的,金融本质上是提供和扩大流动性的工具。而金融的本性是将流动性无限扩大。而金融的监管是对金融本性的监管,其防止流动性可能导致灾难的无限扩大。
这里流动指的是物权的变化,即物主改变。流动性就是物权变化的速度。流动性大就是物权变化的速度快。物权有所有权和使用权。金融也会对这两种不同的权利进行流动。
比如,金融的诞生就是货币的诞生。货币的诞生为物物交换提供了非常大的流动性。在要交换的物物中间,以货币为媒介,就好像为这种交换抹了润滑油一样,使交换速度大大加快。
以金融的这个属性来说,不仅银行、保险和证券公司是金融体系,广义来讲讲产品销售体系也是金融体系的一种,因为产品销售体系加快了产品向消费端流动,以及资金反向向生产者的流动。
我们信以为真的鸡汤谎言
人生过半,才慢慢发现一些从小种在我心中、就像真理一样从不怀疑的信念,其实是鸡汤式的谎言。日常总结一下。
努力就有回报。类似的话包括:付出就有收获,一分耕耘一分收获。在这个题目下从小到大被灌输的字句和文章多到无法计数。各种文艺作品包括小说、电影电视剧、动画漫画……甚至都在不断诉说这个主题。而实际上这是一个鸡汤谎言。事实是:回报需要努力,但努力不一定有回报。努力只是一个必要条件,前提还要有正确的方向。问题是正确的方向并不是容易判断的,常常还需要运气。但中国人尤其喜欢这种不管不顾的努力,于是就有了加班文化、奋斗文化、996/007……某种意义上,努力就有回报是老师、上级、领导等统治者给我们灌输的鸡汤谎言,为了实现统治者们自己所定义的方向。这个方向对吗?有时候对,有时候不对。但是这种把命运交给别人,自己只管努力就好了确实能很省心地获得一种满足感,直到发现方向不对的那一天。追求"老婆孩子热炕头"是贪图安逸的想法。"老婆孩子热炕头"现在好像比较少提了,以前在一些正规的媒体渠道,包括报纸、电影、电视上,会唾弃这种追求“老婆孩子热炕头”的思想。这个应该属于上一条努力就有回报的延伸,既然要努力,就应该不计一切代价的努力,然后会塑造出一批努力到废寝忘食抛妻弃子的伟光正形象,算是比上一条毒鸡汤更毒的鸡汤谎言。且不说真实世界中每一位在各自方向上成功的人,是否都要努力到抛妻弃子,就说“老婆孩子热炕头”本身,也不失是一种合适且并不容易的努力目标。妻子代表组建家庭,仅此一项,就实现了马斯洛需求理论中的生理、安全、爱河归属的需求,良好的婚姻关系甚至还能帮助实现尊重和自我实现需求。孩子还实现了对人类种族最重要的繁衍需求。热炕头排在最后代表了对家庭和后代的付出以后,自己还能满足的其他生理和安全需要。所以,对普通打工人的这一思想唾而弃之的,大概还是上级阶层出于实现他们的目标的需要,担心我们为他们奋斗地不够努力吧。
地球纪年
形成前
一颗超新星爆炸的尘埃->聚合形成太阳->太阳形成时候的爆炸和引力->重元素粉尘靠近太阳, 轻元素远离太阳->粉尘聚集形成陨石再形成行星->靠近太阳为固态金属核或重元素核的行星,远离的为轻元素核的行星->金属核心的地球形成
冥古宙
这一时期主要是各种陨石轰击地球与地球结合, 但有两个重大事件:
- 熔融态金属内核流动形成电流乃至形成磁场, 屏蔽太阳风和宇宙射线, 为生命形成打造防护罩.
- (争议假说)一颗与火星大小相仿, 与地球几乎同轨道的行星Theia(提亚/忒伊亚)与地球相撞, 最初形成地球环, 之后聚集成月球, 月球形成后仍受到大量陨石轰击, 称之为后期重轰炸期.
分为隐生代/原生代/酒神代/雨海代. 这儿认为在原生代出现了最早的细菌生物太古宙
分为 初/古/中/新四个太古代
这一时期细菌和蓝菌等原核生物, 并制造了微量的氧气.元古宙
分为 古/中/新三个元古代
显生宙
分为 古生代/中生代/新生代
古生代分为寒武纪/奥陶纪/志留纪/泥盆纪/石炭纪/二叠纪
中生代分为三叠纪/侏罗纪/白垩纪
新生代分为第二纪(古近纪)/第三纪(新近纪)/第四纪
嵌入式项目分层模型
为将基于不同MCU/不同编译环境/不同产品功能的嵌入式项目能统合在一起编译, 提出这个分层模型.
| 层级 | 层名 | 解释 | 硬件相关性 | 产品型号相关性 |
|---|---|---|---|---|
| 8 | 编译层 | 为方便项目快速编译而开发的批处理文件(如.bat), 可进行dev/build/release等操作,不同产品通过f5y_config.bat配置文件修改 |
有 | (多数)有 |
| 7 | 配置层 | 用于配置产品型号,版本,功能等信息,C语言统一为proj_conf.h |
有 | 有 |
| 6 | 功能层 | 提供各种产品的各种功能,与硬件解耦, 分功能子层func.c/h和驱动测试子层driver_tester.c/h |
- | 有 |
| 5 | 驱动层 | 上驱动层driver.c/h对功能层提供标准驱动接口, 下驱动层修改必要的SDK示例内容以实现不同产品功能的兼容 |
有 | 有 |
| 4 | 项目层 | 为编译使用的项目文件, uv5.proj文件或.mk文件等 | 有 | (多数)有 |
| 3 | SDK层 | 为原生SDK, 可能在硬盘的其他位置 | 有 | (多数)无 |
| 2 | 编译器层 | 为编译器文件, 如uv4.exe, gcc.exe等, 在硬盘其他位置安装 | 有 | 无 |
| 1 | 硬件层 | 为基于不同MCU的实际硬件, 如C51的某型号产品PCB, ESP8266某型号PCB等 | 有 | 有 |
项目生成的固件一般放置在firmware目录中
4~8层在一个集合目录中, 3层SDK看实际情况放置
联想U430 touch的硬盘缓存之谜
U430 touch前几年启动巨慢无比,得半小时到一两个小时, 还得看运气. 后来发现是用作缓存的16G建兴SSD坏掉了, 我估计是超出了写入寿命. 于是闲鱼上买了个威刚的240G二手SATA 2242 SSD. 注意这个型号, 2242不是通用的, 而是联想和hp等笔记本厂家的专属型号, 市面上很难买到,新品只有金胜维, 价格过于便宜, 不太敢买. 闲鱼有大量威刚240G的HP拆机条, 似乎要保险一些.
买回来刚装上发现读取速度还可以但写入速度极慢(10M/S上下), 4K随机读取只有2M/S左右, 解决方式似乎是: 设备管理器->磁盘驱动器->属性->策略,勾选启动设备上的写入缓存. 并且所有盘都要勾上.
另外发现设备管理器->磁盘驱动器的SSD名称还是旧的LITEON 16G, 需要删掉重新发现才变正常.
Intel有一个Intel RST快速存储技术, 另外联想官方还能下载一个ExpressCache软件, 似乎和intel RST作用类似.
已经安装的ExpressCache有问题无法运行且很难删除, 主要是服务不能删除. 我在安全模式下禁用了Intel RST服务和ExpressCache服务, 再回到正常模式下才删除. 然后重新安装, 其中重启了好几次. 安装ExpressCache前, 需要在SSD盘上预留一些未分配空间, 我留了40多G, 安装完重启后, ExpressCache自己取了其中的32G来用.
ExpressCache安装后再次要是命令行操作. 管理员打开命令行输入eccmd -info可以看到当前缓存信息.
值得注意的是, 刚刚安装好ExpressCache, 管理员身份似乎不能马上运行, 如services.msc等需要管理员身份的程序一开始运行会报错, 要过一会儿才行, 似乎是在等待缓存到SSD?