原创 一個使用resnet50的簡單例子

這是一個使用resnet50 的簡單例子。 其中 th.jpeg 是需要識別的圖像,一隻鼠標: import numpy as np from keras.preprocessing import image from kera

原创 另一種加密數據的方法:encfs

如果要加密數據, encfs 使用起來也挺方便的。  它把明文目錄映射爲加密目錄, 在明文目錄裏的文件都會被加密添加到加密目錄,明文目錄用好了之後,可以完全刪除。 以後要存取明文目錄裏的文件時,用encfs 掛載加密目錄。  首先我們安

原创 os.path.walk 在 python 3 裏不存在了

今天想運行一個以前寫的Python 腳本, 解釋器是Python 3.7的, 發現os.path.walk 沒了。 在Python 2.7 下, os.path.walk 用來遍歷一個目錄, 並調用一個回調函數, 用來做需要的事

原创 測試編譯器性能的源碼

這個網站上有許多算法, 都挺耗時的,可以用來測試編譯器或計算機的性能: http://benchmarksgame.alioth.debian.org/index.php 另外,gcc 有選項 -time 可以報告子進程用了多長時間編譯

原创 如何找出重名的全局變量

如果代碼很複雜,可能會出現不同模塊使用名字相同的全局變量, 如何發現 這樣的重複定義?  ld 有 --warn-common 可用。 如果用gcc

原创 strict align 的含義

在有些處理器上,如果在非對齊地址上存取一個一個值,可能會出“對齊異常”。 比如,4字節的int型一般都要在能被4整除的地址上存取;2字節的short型在偶數地址上被存取。 gcc有編譯選項可以讓用戶指明代碼將要運行的主機是嚴格對齊的、還是

原创 Linux 的memblock 內存管理器

Linux 的memblock 內存管理器 最近接觸到了linux 在啓動階段的內存管理器memblock, 它是bootmem 的後續者。 本來想自己寫一篇關於memblock的文章的, 但看到了這篇文章, 就把它翻譯過來了:h

原创 我在Linux下的備份方法(一)

Linux 下有許多備份工具。  我選擇的是 dar ,因爲我感覺它最方便,它其實就是一個打包工具,類似tar,但支持分卷, 差異備份等功能, 恢復數據也很方便。 這是我寫的一個備份Home目錄的方法。 #! /bin/bash #

原创 把你的密碼放在加密設備上

時間久遠,我都忘了原理是什麼了。 Linux 太過穩定, 有的事情做過一遍,很難有機會再做第二遍。  我只記錄了操作。  首先安裝 cryptsetup 包, 我用的是Debian, 因此用 apt-get install crypts

原创 不用防火牆也能阻止那些討厭的網站

現在的網頁上廣告越來越多了, 它們不停地閃爍、跳動、飄移, 如入無人之境, 對電腦使用者是極大的羞辱。  我發現絕大部分廣告都來自幾個大的網站,如百度、淘寶和google。  如果知道它們的域名,把它們解析爲127.0.0.1即可。 即在

原创 一次Linux系統恢復的經歷

由於文件系統經常報有錯,我決定格式化一下磁盤(後來知道不是文件系統問題,而是磁盤壞了)。  這是當時的經過。 幸好事先已經做過備份。 根分區和HOME目錄是分開備份的。磁盤上安裝了多個linux,從另一個linux啓動,用mke2fs

原创 查看gcc使能了多少優化

gcc 的-O2到底使能了多少優化,文檔上提了,似乎說的還不明確。  現在新增了--help=optimizers 選項方便多了。 比如,我們可以做一個-O1 和 -O2的比較: gcc -Q -O1 --help=optimizers

原创 我在Linux下的備份方法(三)

爲了把系統數據與個人用戶數據分開, 我特意寫了一個共 root 使用的腳本,以備份系統文件。  #! /bin/bash # using `dar' to backup a whole directory. There're two

原创 我在Linux下的備份方法(二)

備份的數據要能夠方便地恢復,備份纔有意義。  用dar 備份的數據可以用兩種方法恢復: 一、 恢復個別文件: cd /tmp dar -x /mnt/ydai/home_full -g text/log.txt 二、全部恢復: dar

原创 隨機選擇一個文件:一個更好的辦法

在寫前一篇文章的時候,發現做的有點複雜了,其實有更好的辦法。 不必生成一個行號的文件, 文本文件本身就有行的概念,得到隨機數後,直接取那行不就行了嗎。 這是新版本,更短更簡單: #! /bin/sh # randomly choose