コグノスケ


link 未来から過去へ表示(*)  link 過去から未来へ表示

link もっと前
2020年12月2日 >>> 2020年11月19日
link もっと後

2020年11月23日

調子が良くないWindows 10

目次: Windows

最近ノートPCというかWindows 10の調子が良くなくて、いきなりハングアップしてCtrl+Alt+Delすら受け付けなくなったり、タスクバーの文字が全部消えて操作できなくなったり、謎の動きをしています。

おかしくなると大抵操作不能で、そのまま電源を切るしかありませんが、今日のヘンテコ現象はちょっと違っていてスクリーンショットを取れました。


Wi-Fiのグラフがおかしくなった

Wi-Fiの有効、無効を切り替えても直らず、PCを再起動したら直りました。いったい何だったんでしょうね?

編集者:すずき(2023/09/24 12:47)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2020年11月22日

OpenSSLのAESアクセラレータを強制的に無効にする

たまに必要になって、いつも調べなおしている気がするので、早く探せるようにメモしておきます。

OpenSSLはAESなどいくつかの処理でハードウェアアクセラレータを使うように実装されています。基本的には /proc/cpuinfoのフラグを見て自動的に設定しますが、たまにアクセラレータを強制的に有効or無効にしたくなるときがあります。

OpenSSL: ARM系CPUの機能フラグを上書きできる箇所

void OPENSSL_cpuid_setup(void)
{
    const char *e;
    struct sigaction ill_oact, ill_act;
    sigset_t oset;
    static int trigger = 0;

    if (trigger)
        return;
    trigger = 1;

    if ((e = getenv("OPENSSL_armcap"))) {
        OPENSSL_armcap_P = (unsigned int)strtoul(e, NULL, 0);    //★これ
        return;
    }

ソースコード(OpenSSLのGitHubへのリンク)をみると、OPENSSL_armcapという環境変数でCPUの持つ機能フラグを好きな値で上書きできることがわかります。

実際使ってみよう

ROCKPro64(Rockchip RK3399, Cortex-A72 + Cortex-A53)で測ってみます。

ROCKPro64でのベンチマーク結果
# AESアクセラレータON

$ openssl speed -evp aes-128-gcm

type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-gcm     168921.74k   499845.48k   837985.11k  1005767.68k  1070077.27k  1046943.06k


# AESアクセラレータOFF

$ OPENSSL_armcap=0 openssl speed -evp aes-128-gcm

type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-gcm      46764.84k    51727.58k    53175.72k    53730.99k    54086.31k    54220.12k

OFFにするとどのサイズでもほぼ同じ速度になり、いかにもソフトウェア処理っぽい結果になります。アクセラレータのON/OFFが効いていそうですね。

編集者:すずき(2020/11/23 16:23)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2020年11月21日

Zephyrのダウンロードとモジュール

目次: Zephyr

Zephyrは本体(GitHubへのリンク)と、モジュールに分かれています。

モジュールを1つも使わなくてもZephyrは動きますが、sanitycheckを実行するときモジュールに依存したテストでビルドエラーが出て、ノイズになってしまいます。

Zephyrのモジュール管理

Zephyrはwestという独自のモジュール管理ツールを持っています。インストール方法は公式ドキュメント(Installing west - Zephyr Project Documentation)にあるとおりです。

westのインストール
$ pip3 install --user -U west

Zephyrとモジュールのダウンロード方法も公式ドキュメント(Getting Started Guide - Zephyr Project Documentation)にあるとおりの手順です。

Zephyrのダウンロード(公式手順)
$ mkdir work
$ cd work

$ west init
$ west update

非常に楽ですね。

今まで使っていたZephyrにモジュールだけ足したい

あまり推奨されるやり方ではないですが、今まで使っていた「素の」Zephyrのツリーを再利用して、モジュールだけ追加したい場合はどうしたら良いでしょうか?

ポイントはwest initで生成される .west/configというファイルを手動で作ることです。workというディレクトリに今まで使っていたZephyrのコードがあるとします。

westのコンフィグファイルを作る
$ cd work

$ west topdir

FATAL ERROR: no west workspace found from "/home/username/work"; "west topdir" requires one.
Things to try:
  - Change directory to somewhere inside a west workspace and retry.
  - Set ZEPHYR_BASE to a zephyr repository path in a west workspace.
  - Run "west init" to set up a workspace here.
  - Run "west init -h" for additional information.

$ mkdir .west
$ cat > .west/config
[manifest]
path = zephyr
file = west.yml

$ west topdir

/home/username/work

コンフィグを作ってwest topdirが動作したら、west updateも実行できるようになっているはずです。モジュールは数が多く手動でダウンロードすると大変ですが、westに持ってきてもらえば楽ですね。

編集者:すずき(2023/09/24 12:01)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2020年11月19日

世界耐久選手権

WEC 2019-2020年シーズン 第8戦(最終戦)バーレーン8時間 決勝 - TOYOTA GAZOO Racingを読んで。WEC 2019-2020最終戦、トヨタが1-2フィニッシュで優勝とのこと。おめでとうございます。

WECは世界的な耐久レースシリーズで「ル・マン24時間耐久レース」の知名度だけ抜群に高いです。24時間耐久はル・マンだけで、他は大体6時間耐久です。日本も富士SWでレースしてます。2018年から参加チームの懐事情が厳しい(?)のか、2年で1シリーズの不思議な開催方式になりました。

WEC最速はLMP1クラスというんですが、2016年にアウディ、2017年にポルシェが抜け、プライベーターのレベリオン、SMPもいなくなり、今はトヨタしかいません。耐久レースですから、完走自体が素晴らしいことです。が、同クラスの相手がいない「優勝」はちょっと寂しいですね。

残念なことに、同じLMP1クラスと言えども、資金力の差がありすぎて、
LMP1ワークス(アウディ、ポルシェ、トヨタ)>>LMP1プライベーター(レベリオン、SMP)
結果はこうなります。2016年を見るとわかりやすいです。ワークスはプライベーターにはまず負けません。10周差とかブッチ切りで勝ちます。

トヨタもこのまま一人でLMP1でレースを続けるのは嫌だろうし、箱車のプロトタイプカー最高峰LMP1クラスはなくなってしまうのか、悲しいなあ……。とか勝手にしみじみしていたのですが、来年からは名前を一新してLMHクラスになって、トヨタはもちろんアルピーヌ(ルノー)が参戦するっぽいです。

以下は、過去の戦績です。

編集者:すずき(2023/07/11 15:43)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



link もっと前
2020年12月2日 >>> 2020年11月19日
link もっと後

管理用メニュー

link 記事を新規作成

<2020>
<<<12>>>
--12345
6789101112
13141516171819
20212223242526
2728293031--

最近のコメント5件

  • link 21年3月13日
    すずきさん (03/05 15:13)
    「あー、このプログラムがまずいんですね。ご...」
  • link 21年3月13日
    emkさん (03/05 12:44)
    「キャストでvolatileを外してアクセ...」
  • link 24年1月24日
    すずきさん (02/19 18:37)
    「簡単にできる方法はPowerShellの...」
  • link 24年1月24日
    KKKさん (02/19 02:30)
    「追伸です。\nネットで調べたらマイクロソ...」
  • link 24年1月24日
    KKKさん (02/19 02:25)
    「私もエラーで困ってます\n手動での回復パ...」

最近の記事20件

  • link 24年3月25日
    すずき (03/26 03:20)
    「[Might and Magic Book One TASのその後] 目次: Might and Magicファミコン版以前(...」
  • link 21年10月4日
    すずき (03/26 03:14)
    「[Might and Magicファミコン版 - まとめリンク] 目次: Might and Magicファミコン版TASに挑...」
  • link 24年3月19日
    すずき (03/20 02:52)
    「[モジュラージャックの規格] 古くは電話線で、今だとEthernetで良く見かけるモジュラージャックというコネクタとレセプタク...」
  • link 23年4月10日
    すずき (03/19 11:48)
    「[Linux - まとめリンク] 目次: Linuxカーネル、ドライバ関連。Linuxのstruct pageって何?Linu...」
  • link 24年3月18日
    すずき (03/19 11:47)
    「[画面のブランクを無効にする] 目次: LinuxROCK 3 model CのDebian bullseyeイメージは10分...」
  • link 24年3月3日
    すずき (03/19 11:07)
    「[解像度の設定を保存する] 目次: LinuxRaspberry Pi 3 Model B (以降RasPi 3B)のHDMI...」
  • link 24年3月14日
    すずき (03/16 23:03)
    「[JavaとM5Stamp C3とBluetooth LE - Bluetoothデバイスとの通信] 目次: ArduinoM...」
  • link 24年3月8日
    すずき (03/16 23:03)
    「[JavaとM5Stamp C3とBluetooth LE - BluetoothデバイスとServiceの列挙] 目次: A...」
  • link 23年6月2日
    すずき (03/16 21:11)
    「[Arduino - まとめリンク] 目次: Arduino一覧が欲しくなったので作りました。 M5Stackとesp32とA...」
  • link 23年5月15日
    すずき (03/16 00:57)
    「[車 - まとめリンク] 目次: 車三菱FTOの話。群馬県へのドライブ将来車を買い替えるとしたら?FTOのオイル交換とオイル漏...」
  • link 24年3月9日
    すずき (03/16 00:56)
    「[車のバッテリー完全に死亡で交換かと思いきや] 目次: 車またまた車のバッテリーが干上がって死にました。写真は撮っていませんが...」
  • link 24年3月10日
    すずき (03/15 03:34)
    「[誕生日] 早いもので41歳になりました。昨年の日記(2023年3月10日の日記参照)を見ると、コロナの流行を心配していました...」
  • link 24年3月6日
    すずき (03/12 01:18)
    「[Raspberry Pi 3 model Bの代わりにROCK 3 model C] 目次: Arduino最近、M5Sta...」
  • link 24年3月4日
    すずき (03/06 00:09)
    「[volatileをnon-volatileで参照してはいけない] 目次: GCC過去の日記(2021年3月13日の日記参照)...」
  • link 20年6月2日
    すずき (03/06 00:06)
    「[GCC - まとめリンク] 目次: GCCGCCについて。GCCを調べる - その1 - ビルドGCCを調べる - その2 ...」
  • link 15年5月9日
    すずき (03/05 03:00)
    「[自作ARMエミュレータ - 今さら気づいたブートローダのバグ] 目次: Linuxずっと気づいていなかった自作ARMエミュレ...」
  • link 23年6月1日
    すずき (03/05 02:59)
    「[自宅サーバー - まとめリンク] 目次: 自宅サーバーこの日記システム、Wikiの話。カウンターをPerlからPHPに移植日...」
  • link 15年5月3日
    すずき (03/05 02:59)
    「[GRUB2が起動しなくなってしまった] 目次: 自宅サーバーサーバにインストールしていたDebian 32bit版 のJes...」
  • link 15年5月2日
    すずき (03/05 02:58)
    「[systemdを使うのをあきらめた] 目次: 自宅サーバー独自ビルドのカーネルだと/sys/fs/cgroupが無いと言われ...」
  • link 15年4月30日
    すずき (03/05 02:56)
    「[Debian 8.0 Jessie] 目次: 自宅サーバーDebianのアップデートが来ていたので、試しに職場のPCをアップ...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 03/26 03:20