JFFS & JFFS2 和闪存

JFFS: ournalling Flash File System的缩写, 闪存设备日志型文件系统. 版本2 是 JFFS2.
一个特别针对闪存的文件系统.

JFFS v1 最初是由瑞典的 Axis Communications AB 公司开发的,使用在他们的嵌入式设备中,并且在 1999 年末基于 GNU GPL 发布出来。最初的发布版本基于 Linux 内核 2.0,后来 RedHat 将它移植到 Linux 内核 2.2,做了大量的测试和 bug fix 的工作使它稳定下来,并且对签约客户提供商业支持。但是在使用的过程中,JFFS v1 设计中的局限被不断的暴露出来。于是在 2001 年初的时候,RedHat 决定实现一个新的闪存文件系统,这就是现在的 JFFS2。下面将详细介绍 JFFS2 设计中主要的思想,关键的数据结构和垃圾收集机制。这将为我们实现一个闪存上的文件系统提供很好的启示。 首先,JFFS2 是一个日志结构(log-structured)的文件系统,包含数据和原数据(meta-data)的节点在闪存上顺序的存储。

闪存(Flash Memory)是一种长寿命的非易失性存储器,即断电数据也不会丢失,它在断电情况下仍能保持所存储的数据信息。闪存是电子可擦除只读存储器(EEPROM)的变种,闪存比EEPROM的更新速度快,由于闪存在断电时仍能保存数据,闪存通常被用来保存设置信息,如在电脑的BIOS(基本输入输出程序)、PDA(个人数字助理)、数码相机中保存资料等。另一方面,闪存不像RAM(随机存取存储器)一样以字节为单位改写数据,因此不能取代RAM。

参考:
https://www.ibm.com/developerworks/cn/linux/l-jffs2/
https://baijiahao.baidu.com/s?id=1586216175552330266&wfr=spider&for=pc

关于路由器固件 tomato, tomatoUSB, advanced tomato

tomato 是一个基于 Linux 的, 专门给使用Broadcom芯片的路由器用的系统.
2008年Teddy_Bear基于 tomato 发布了支持 USB 的 tomatoUSB, 并扩展了其他功能. 2011年, 他宣称不在维护.
最新的发布是 Tomato by Shibby, 由Shibby 发布.
Advanced tomato 是改进了 tomato 的 UI.

Tomato by Shibby: 关于 tomato 历史: http://tomato.groov.pl/?page_id=81
Tomato FAQ: http://www.polarcloud.com/tomatofaq
https://advancedtomato.com/

python 查询 Oracle

如下代码片段使用 cx_Oracle 查询 Oracle DB.

import cx_Oracle

def query(conn_params, sql, named_params = None):
conn = None
ret_list = []
try:
    conn = cx_Oracle.connect(conn_params)
    try:
        cur = conn.cursor()

        if named_params is None:
            cur.execute(sql)
        else:
            cur.execute(sql, named_params)
        
        return cur.fetchall()
    finally:
        cur.close()
finally:
    if conn is not None:
        conn.close()

调用方式:

named_params = {"name":"eric", "age":18}
sql = "SELECT * FROM user WHERE name = :name and age = :age"
conn_url = "app_read/app_read@db.tianxiaohui.com:1521/APP"

results = query(conn_url, sql, named_params)
print(results)

results = query(conn_url, "SELECT * FROM user")
print(results)

时序数据的偏离监测 异常监测 Time Series Data Anomaly Detection

最近在搞这方面的一些, 相关文章

https://blog.statsbot.co/time-series-anomaly-detection-algorithms-1cef5519aef2
https://github.com/twitter/AnomalyDetection
https://www.ibm.com/support/knowledgecenter/en/SS4MB9_10.0.0/Detect/components/trend_about_trend_components.html
https://blog.twitter.com/engineering/en_us/a/2015/introducing-practical-and-robust-anomaly-detection-in-a-time-series.html