树莓派ARM开发板使用TF卡启动和系统安装到EMMC启动,硬盘存储读写速度对比测试
by ourjs keys 大话编程 分享 1567643388233
树莓派从百网卡升级到了千兆,但却爆出了一些设计缺陷,实测中TF卡的读写速度仅为10/30Mb/s,远远发挥不出CPU和千兆网卡的性能。
那么如果树莓派采用emmc存储,能否发挥出最佳性能呢?我们可以选用有EMMC存储的ARM开发板测试一下。
首先,下载Armbian操作系统,然后用Win32DiskImager写入TF卡,并通电启动。
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
by ourjs keys 大话编程 分享 1566438763936
使用时将此脚本文件命名为lines.js,然后复制到需要统计的文件夹下,然后执行
node lines.js
然后会统计每一个代码文件的长度,和代码总行数:

$ node lines.js
lines.js 56
package.json 6
...
LINES: 40464
在Windows平台上用命令行创建tar.gz压缩包和解压
by ourjs keys 大话编程 分享 1566375854395
如果在Windows上安装了Linux子系统,可以用Linux命令。 
创建.tar.gz
tar -czvf dwt.tar.gz dwt/
解压.tar.gz
tar -xzvf dwt.tar.gz -C tmp/
node.js函数如何获取调用者的文件目录路径: 用callsite获取错误堆栈的每一层文件名及路径
by ourjs keys 大话编程 分享 1565664498309
在node.js中有时侯会想从被调用函数中获取调用者的文件位置和路径。可以用以下方法。使用这个模块可以获取调用堆栈的文件目录

var path = require('path'),
    callsite = require('callsite');

module.exports = {
  someFn: function () {
    var stack = callsite(),
        requester = stack[1].getFileName();

    console.log(path.dirname(requester));
  }
};

华为鸿蒙操作系统想要取代Android几乎不太可能
by newghost keys 大话编程 分享 1565584063264

鸿蒙前两天吵的很热,媒体一片赞扬,不过个人认为,从鸿蒙的技术架构看,应该还是以面向嵌入式、工业、IoT场景的。鸿蒙想成为手机除Android/iOS之外的第三极操作系统,很难很难,几乎不可能。目前媒体对鸿蒙有些过誉,要小心被捧杀的风险。

    让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
    by ourjs keys JS学习 JavaScript 1564563777511
    pre显示文本内容时是不会自动换行的,此时可以添加一些CSS来解决:HTML中pre和textarea可以显示预格式化的文本。即保留空格和换行符。而不必添加<br>和&nbsp;等HTML元素来添加换行和打印空格。

    pre {
        word-wrap: break-word;
        white-space: pre-wrap;
        padding: 9.5px;
        background-color: #f5f5f5;
        border: 1px solid #ccc;
    }
    Facebook发布全新JavaScript引擎Hermes:越来越像Java字节码,JS要统一全端?
    by newghost keys JS学习 JavaScript 1563509511352
    Facebook在Chain React 2019 大会上发布的一个崭新JavaScript引擎: Hermes,比传统JavaScriptJIT,即时运行的方式不同,Hermes需要先将JavaScript编绎成字节码,这一点很像是Java的方式。比测试可观察,Hermes引擎提升性能较为明显,使用预编绎,很容易得知这些提升所产生的原因。

  1. 在应用程序可用的时间上,Hermes能提升一倍的时间效率(减少即时执行的语言解释过程)
  2. 在安装包下载大小下,Hermes能减少50%的大小(JS被压缩成了字节码)
  3. 在内存利用率上,Hermes能节省30%的内存使用(不需要在解释执行时额外产生的临时内存使用)
  4. Node.JS的竞争对手?QuickJS入门教程,使用os模块读写文件,并将JavaScript编绎成可执行文件
    by ourjs keys JS学习 Node.JS 1563241334223
    QuickJS 是一个完全由C语言编写的极小型JavaScript引擎,支持跨平台运行,并且有一些Java的特质,可将JS直接编绎成二进制文件。内置的系统模块还可以直接读写文件,动态加载脚本。目前还不支持net模块,不过已经有人在pull request中提交了merge请求。不久将可以直接使用系统Socket或发送http请求,构建web服务器。

    由于非常精简,而且拥有JavaScript的全部功能,可以预见,QuickJS将是Node.JS在嵌入设备,尤其是低端设备上较强的竞争对手。
    在嵌入式设备树莓派上编译QuickJS教程:一个C语言编写的极简JavaScript引擎
    by ourjs keys JS学习 JavaScript 1563211266482
    QuickJS 是一个完全由C语言编写的极小型JavaScript引擎,作者是大名鼎鼎的FFmpeg和QEMU的创建者Fabrice Bellard以及C专家Charlie Gordon。QuickJS采用开源MIT协议,不限制商业用途。它是一个“小而完整的JavaScript引擎”,支持最新的ES2019语言规范。
    因为其复杂度要远远低于用C++编写的Google的V8和Mozilla的SpiderMonkey,因此非常适合在嵌入式设备上使用。
    因为完全由C语言编写,可以很方便地集成到一些著名的C语言程序比如,替换掉Redis和Nginx中的Lua脚本。
    由于可以单独将JS编绎成可执行文件,应用场景更加广泛。
    树莓派4对比测试:性能提升3倍启动时间反而变慢?TF卡成最大瓶颈
    by ourjs keys 技术前沿 分享 1561438036895
    全新的第四代树莓派(Raspberry Pi 4)发布了,是有史以来最强的树莓派,性能可比主流电脑。但国外某位小哥在做完性能测试对比发现,相比3B,提升最大的是外接USB3.0的读写速度,提升了6倍。但其它性能提升并不是特别明显,启动时间反而变慢了。

    道理很简单,目前RaspberryPi 只能从TF卡启动,TF卡的读写速度目前只有10~30M/s。因而完全无法发挥出树莓派4千兆网卡,USB3.0的速度优势。反而要加载更多的系统驱动,启动时间变慢也不足为奇。
     
    树莓派3B+将原来100M网卡提升到了300M,而不是千兆也是出于这个原因,因为最大只能利用到30M/s的传输速度。未来树莓派要有质的提升,可能还需要更小,更便宜的固态硬盘出现了。不过目前接外一个USB3.0的移动硬盘也是个不错的选择。

     近期热门 - 点击最多
    1. 使用node.js和oAuth2协议集成Github/LinkedIn第三方登录以OnceOA模块源码为例
    2. 基于Node.JS和Electron编写的集成开发环境 VS Code,成为最受欢迎的IDE
    3. Redis源码分析,在C语言中将当前时间转化成毫秒微秒整数值
    4. JavaScript在Array数组中按指定位置删除或添加元素对象
    5. Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
    6. Linux下的tar压缩解压缩命令详解,创建解压目录到.tar.gz包
    7. CentOS注册系统服务,添加自动启动脚本
    8. 用OnceOA旺司在树莓派等arm设备免费搭建私有云版有道云笔记文档管理系统,在线编辑Markdown,同步备份手机照片
    9. node.js含有%百分号时,发送get请求时浏览器地址自动编码的问题
    10. Node.JS用纯JavaScript生成图片或滑块式验证码

      全端社区 - 最新回复
    1. 基于Node.JS和Electron编写的集成开发环境 VS Code,成为最受欢迎的IDE
    2. 使用node.js和oAuth2协议集成Github/LinkedIn第三方登录以OnceOA模块源码为例
    3. JavaScript在Array数组中按指定位置删除或添加元素对象
    4. 重要更新|报表神器FastReport.NET v2020.1强势发布!图文拖放功能让报表设计更高效
    5. 一个测试人员眼中的创业团队
    6. Redis源码分析,在C语言中将当前时间转化成毫秒微秒整数值
    7. Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
    8. Linux下的tar压缩解压缩命令详解,创建解压目录到.tar.gz包
    9. CentOS注册系统服务,添加自动启动脚本
    10. 用OnceOA旺司在树莓派等arm设备免费搭建私有云版有道云笔记文档管理系统,在线编辑Markdown,同步备份手机照片

      开源的 OurJS
    OurJS开源博客已经迁移到 OnceOA 平台。

      关注我们
    扫一扫即可关注我们:
    OnceJS

    OnceOA