2018年7月11日 星期三

[工作] 從file_operation的read/write函式, 從struct file裡面讀到檔名

ex. ssize_t led_write(struct file *filp, const char __user *buff,
                        size_t size, loff_t *ppos)


檔名: filp->f_path.dentry->d_iname

2018年6月10日 星期日

[工作] shell script紀錄程式執行時間

利用date來記錄時間

在程式執行前紀錄時間T1,
並在程式執行後記錄時間T2

最後T2-T1後就是執行時間

#!/bin/bash

t1=$(date +"%s")

# Execute your process
...

t2=$(date +"%s")

echo $((t2-t1))

2018年6月1日 星期五

[烹飪] 馬鈴薯燉肉

材料:
馬鈴薯 3顆
紅蘿蔔小 2條 (大 1條)
洋蔥 1顆
水 400c.c
日式醬油 100c.c
味淋 20c.c.
酒50c.c
豬五花肉 200g

作法:
1. 馬鈴薯跟紅蘿蔔先去皮切塊, 鍋內放水醬油味淋跟酒等醬料, 放入馬鈴薯紅蘿蔔用中火煮
2. 洋蔥去皮切絲, 跟肉一起放到平底鍋放點油上炒至透明
3. 等馬鈴薯紅蘿蔔煮的差不多後, 放入2的材料進去
4. 煮到馬鈴薯鬆軟後完成

[烹飪] 白酒蛤蠣義大利麵

材料:
蛤蠣適量
米酒
橄欖油

九層塔
義大利麵
大蒜

作法:
1. 先取5顆蛤蠣, 放進鍋子裡, 加入400c.c水煮半小時, 取出高湯備用
2. 裝水煮義大利麵
3. 煮麵同時取另外一鍋, 放入橄欖油爆香大蒜, 後加入蛤蠣高湯, 跟放入剩下蛤蠣, 小火煮到蛤 蠣全開
4. 全開後轉大火煮滾, 放入義大利麵跟九層塔拌炒, 可能要加點鹽巴
5. 湯汁收的差不多後就可以了

[工作] Android下透過command send intent

Command:
am broadcast -a <ACTION> --es <EXTRA_STRING_KEY> <EXTRA_STRING_VALUE>

EX.
am broadcast -a "com.android.testcolor" --es "color" "blue"

2018年5月23日 星期三

[工作] 讓Android關機的幾種command

1. reboot -p
2. svc power shutdown
3. setprop sys.powerctl shutdown
4. am start -n android/com.android.internal.app.ShutdownActivity

2018年5月22日 星期二

[工作] 使用sed將文件多行合併成一行

這邊利用sed來將文件多行內容合併成一行.

ex.
cat test
1
2
3
4
5

sed 'N; s/\n//g' test
12
34
5
N就是把下一行也抓進來一起處理的意思

sed ':a; N; s/\n//g; t a;' test
12345
設一個a標的, 然後處理完就用t跳回a標的繼續處理

下面stackoverflow的解答講的滿詳細的.
https://stackoverflow.com/questions/6255796/how-the-n-command-works-in-sed?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa


[工作] Dynamic Debug用法

在開發跟debug的過程中,
常會看到debug message寫成pr_debug, dev_dbg,
因為priority較低.
在一般debug log裡面通常不會顯示.

在比較新一點的kernel可以用dynamic debug的方式開啟這些debug message,
如果你要看的log在xxx.c裡面:
echo "file xxx.c +p" > /sys/kernel/debug/dynamic_debug/control

這樣在xxx.c裡面pr_debug/dev_dbg都會顯示出來了.

如果只想看xxx.c裡面第100行的log:
echo "file xxx.c line 100 +p" > /sys/kernel/debug/dynamic_debug/control

就只會顯示那一行.

2018年2月12日 星期一

[旅遊] 冬季北海道穿搭筆記


剛從北海道回來,冬天一片雪白真的很美也真的很冷
將這次的穿搭心得跟下次能改進的紀錄一下。

我覺得主要的重點就是防水跟防風,
身體一濕,風一吹真的會很冷,
沒防風的話,冷風還是會刺進來。

這次上半身其實都很ok
頭部有毛帽,口罩,
然後脖子戴登山常見的防風圍脖,
然後身體從內到外分別是:
發熱衣,一般襯衫,然後一件防風保暖的大外套,
基本上就是一件外防風內保暖的大衣就好,
或是防風層跟保暖層能用拉鍊連起來的。

不要洋蔥式穿法,
因為北海道雖然外面很冷,
但一進室內包含交通工具上,
都會熱到讓人受不了,
所以能一進去就方便脫掉最好。

然後這次最需要改進的應該是腳部了,
個人是穿牛仔褲搭一件uniqlo的發熱緊身褲,
發現完全不夠,因為不防風,
冷風還是可以穿透進來,
所以下次應該會準備一件防風褲。

鞋子的話也要有防水的最好,
有時候踩到比較深的雪,
融化之後沒防水的話,腳會很冷,
然後搭個羊毛厚襪,就很足夠了。

2018年1月25日 星期四

[工作] quota介紹(轉)

Android 8.0之後enable quota:
https://source.android.com/devices/storage/faster-stats

鳥哥的介紹:
http://linux.vbird.org/linux_basic/0420quota.php

2018年1月10日 星期三

[工作] Pixel(Google手機) 更換factory image的方法

1. 抓image:
https://developers.google.com/android/images

2. 在Settings -> Developer option裡面開啟OEM unlock

3.
解壓縮下載的image,
fastboot flashing unlock,
flash_all.sh

4. 等燒完重開機就ok了

2018年1月8日 星期一