每周分享第 48 期

一个特殊的用于显示数字的字体 https://blog.janestreet.com/commas-in-big-numbers-everywhere/ Intel 的 SPMD 编译器 https://ispc.github.io/ 基于 Scala 的 notebook https://polynote.org/ 解析登机牌信息 https://github.com/georgesmith46/bcbp 常用的 React Hooks 库 https://github.com/streamich/react-use jwt 工具 https://github.com/mike-engel/jwt-cli 用过程宏实现的 delegation in Rust https://github.com/chancancode/rust-delegate

Read More

每周分享第 47 期

CLion 完善了 Rust 调试支持 https://blog.jetbrains.com/clion/2019/10/debugging-rust-code-in-clion/ Nginx HTTP3 的 docker 镜像 https://github.com/RanadeepPolavarapu/docker-nginx-http3 手算 Ed25519 https://dang.fan/zh-Hans/posts/25519 Rust 的 QuickCheck https://github.com/BurntSushi/quickcheck Rust 另一个类似 QuickCheck 的测试框架 https://github.com/AltSysrq/proptest Cookie 策略要改了 https://readhacker.news/s/4bvGG

Read More

每周分享第 46 期

LibC++ 正式支持 WASI https://releases.llvm.org/9.0.0/projects/libcxx/docs/ReleaseNotes.html 从文本反推 regex https://github.com/pemistahl/grex KDE 5.17 发布 https://www.omgubuntu.co.uk/2019/10/kde-plasma-5-17-features IDA 7.4 发布 支持 Py3 https://www.hex-rays.com/products/ida/7.4/index.shtml 新的 CPU Bug https://www.phoronix.com/scan.php?page=news_item&px=Chrome-Geminilake-Bug WAST -> WASM in Rust https://docs.rs/wast/

Read More

为 Cisco WLC 配置 Telegraf

最近想到可以给 Cisco WLC 也配置一下监控,查了一下,果然有一些方法。大概研究了一下,找到了方法: 把 https://github.com/haad/net-snmp/tree/master/mibs 和 https://github.com/zampat/neteye4/tree/master/monitoring/monitoring-plugins/wireless/cisco/mibs 目录下的所有 .txt 文件放到 /usr/share/snmp/mibs 目录下。 然后把 https://github.com/zampat/neteye4/blob/master/monitoring/monitoring-plugins/wireless/cisco/telegraf.conf 下面 snmp 的配置复制到 telegraf 配置中,然后修改一下 IP 地址。 确保 Cisco WLC 的 SNMP 的 Public Community 已经配置好,然后就可以拿到数据了。 目前可以拿到 WLC 自身的一些运行˙状态信息、AP 的信息、SSID 的信息和 Client 的信息,基本满足了我们的需求。 参考:https://www.neteye-blog.com/2019/08/monitoring-a-cisco-wireless-controller/

Read More

每周分享第 45 期

Android ARM32/64 环境模拟 https://github.com/zhkl0228/unidbg Calibre 4.0 https://readhacker.news/s/4aukk Rust 的 gRPC 实现 https://github.com/hyperium/tonic JAVA API 历史 https://github.com/marchof/java-almanac Elm 开发 dev server https://github.com/wking-io/elm-live 另一个静态网站生成器 https://github.com/getzola/zola Catalina 发布 Notarization 的相关情况 https://eclecticlight.co/2019/06/07/notarization-in-mojave-and-catalina/ https://eclecticlight.co/2019/05/31/can-you-tell-whether-code-has-been-notarized/ 椭圆曲线加密算法 https://fangpenlin.com/posts/2019/10/07/elliptic-curve-cryptography-explained/ Travis CI 添加 ARM 支持 https://blog.travis-ci.com/2019-10-07-multi-cpu-architecture-support CD 上的结构 https://readhacker.news/s/4aDHB 在线 TAC 的虚拟机 https://jiege.ch/online_tac_vm/ 在线 Decaf 编译和运行 https://jiege.ch/online_decaf/

Read More

每周分享第 44 期

Modern Script Loading https://jasonformat.com/modern-script-loading/ 如何实现 closure http://craftinginterpreters.com/closures.html 加速 uniform_int_distribution 实现 https://lemire.me/blog/2019/09/28/doubling-the-speed-of-stduniform_int_distribution-in-the-gnu-c-library/ 在 FPGA 上运行 Rocket Chip 教程 https://github.com/cnrv/fpga-rocket-chip Xilinx Bitstream 逆向 https://prjxray.readthedocs.io/en/latest/ JVM 利用 SIGSEGV 进行 null 检测 https://jcdav.is/2015/10/06/SIGSEGV-as-control-flow/ Async/Await 进入 Rust Beta https://blog.rust-lang.org/2019/09/30/Async-await-hits-beta.html 在 Rust 里实现 Plugin http://adventures.michaelfbryan.com/posts/plugins-in-rust/

Read More

用 Nginx 作为 RTMP 服务器并提供直播服务

Nginx 除了可以做 HTTP 服务器以外,还可以做 RTMP 服务器,同时转成 HLS 再提供给用户,这样可以实现一个直播的服务器,用 OBS 推上来即可。 首先要安装 nginx-rtmp-server 模块,很多的发行版都已经包含了,它的主页是 https://github.com/arut/nginx-rtmp-module ,下面很多内容也是来自于它的教程中。 接着,配置 Nginx ,在 nginx.conf 的顶层中添加如下的配置: rtmp { server { listen 1935; chunk_size 4096; application live { live on; record off; hls on; hls_path /path/to/save/hls; hls_fragment 1s; hls_playlist_length 10s; } } } 这里表示 Nginx 要在 1935 监听一个 RTMP 服务器,然后把 live 下的视频切成片然后存在目录下,提供一个 m3u8 文件以供播放器使用。这里的参数都可以按照实际需求进行调整。这时候应该可以看到 nginx 正确监听1935 端口,这是 rtmp 的默认端口。 接着,需要在一个 HTTP server 路径下把 HLS serve 出去: location /hls { # Serve HLS fragments types { application/vnd.

Read More

每周分享第 43 期

Async in C https://github.com/naasking/async.h Mozilla 的 QUIC 实现 https://github.com/mozilla/neqo/ 在PCI上做的攻击 https://github.com/ufrisk/pcileech 对 X 的原理介绍 https://magcius.github.io/xplain/article/index.html Ethernet 物理层的介绍 https://www.analog.com/media/en/technical-documentation/application-notes/EE-269.pdf Overleaf 更新了 TeX Live 版本 https://www.overleaf.com/blog/tex-live-upgrade-september-2019 下一代 proc macro ? https://github.com/alexcrichton/proc-macro2 iOS 13 API 变化 https://nshipster.com/ios-13/ iOS 13.1.1 发布 Rust 编译期 HashMap https://github.com/sfackler/rust-phf V8 加入顶层 Await 支持 https://chromium.googlesource.com/v8/v8.git/+/0ceee9ad28c21bc4971fb237cf87eb742fc787b8%5E%21/ ASCII 码表的一种理解 https://garbagecollected.org/2017/01/31/four-column-ascii/ Cloudflare 启用 HTTP/3 https://blog.cloudflare.com/http3-the-past-present-and-future/ ZFS 发布 0.8.2 https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.8.2

Read More

每周分享第 42 期

Dart 2.5 发布 Rust USB device 库 https://github.com/mvirkkunen/usb-device 同步视频的 timecode https://github.com/cnbeining/autotimecode xv6 今年换到了 riscv https://github.com/mit-pdos/xv6-riscv-fall19 pdf 文本搜索 https://pdfgrep.org/ iOS 13 正式版发布 exFAT 驱动进入 Linux 5.4 Microsoft exFAT File-System Mailed In For Linux 5.4 Along With Promoted EROFS & Greybus Bash 详细教程 https://github.com/dylanaraps/pure-bash-bible Rust 编译到 iOS bitcode https://github.com/getditto/rust-bitcode JS 运行时间 in V8 https://v8.dev/blog/cost-of-javascript-2019#json USB3.0 PIPE 接口实现 https://github.com/enjoy-digital/usb3_pipe LLVM 9.0 发布 https://lists.llvm.org/pipermail/llvm-dev/2019-September/135304.html Safari 13.0 发布 Rust 模板引擎 https://github.com/botika/yarte systemd 开始掌握 home 目录 https://www.

Read More

在 macOS 上创建 ESP 镜像文件

最近 rCore 添加了 UEFI 支持,在 QEMU 里跑自然是没有问题,然后尝试放到 VMWare 虚拟机里跑,这时候问题就来了:需要一个带有 ESP 盘的 vmdk 虚拟盘。搜索了一下网络,找到了解决方案: hdiutil create -fs fat32 -ov -size 60m -volname ESP -format UDTO -srcfolder esp uefi.cdr 其中 60m esp 和 uefi.cdr 都可以按照实际情况修改。它会把 esp 目录下的文件放到 ESP 分区中,然后得到一个镜像文件: uefi.cdr: DOS/MBR boot sector; partition 1 : ID=0xb, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 1, 122879 sectors, extended partition table (last) 接着转换为 vmdk : qemu-img convert -O vmdk uefi.cdr uefi.vmdk 这样就可以了。

Read More