PCIのマジックライト

PCIのBARレジスタに隠されている、メモリ空間サイズを得るための手順です。枯れた技術ですが、組込エンジニアにとっては少しやっかいです。忘れてしまうので、最も端的で分かりやすい解説リンクを置いておきます。ごく稀に、話題になります。

stackoverflow.com

 

備考:
The Linux Kernel: PCI 「デバイスが必要とするPCI I/OとPCIメモリ空間の容量を調べる」

 

ホームネットワーク(VDSL)

とある家庭(親類)のネットワークをコンサルしたときに作成/提供したポンチ絵を以下に示します。電話線とLANケーブルを区別するのも難しい人向けに作ったつもりですが、このコンサルは私の本職ではなく、間違いはあるかもしれません。ご了承ください。

f:id:t0a9n9a4k:20201004233210p:plain

VDSLは、LANケーブル敷設の無いマンションでの有線インターネット方式です。ひかり電話フレッツ光など、「光」と記載されたサービスでも、VDSLの場合は光ケーブルは電話局からマンションのMDF室(≒管理室)までです。MDF室から各戸には、既設のアナログ電話線にデジタル信号を乗せて配信しますが、電話線の場合、長さや状態によって信号が激しく劣化するので、今ならそうしたマンションではWiMAXサービス(≒スマホテザリング)を使う方が良いかもしれません。その方が、電源ケーブル周りもスッキリします。しかし、このお宅では、プロバイダを変えたくない、FAXを使う等の事情がありました。また、Youtubeもスムーズに見れていたので、電話線での劣化は許容範囲でした。

セキュリティ設定をどこまで実施するかは悩みどころでしたが、このお宅のユーザ様はとにかくネットにつながるところを選択してしまうご様子だったので、MACアドレスフィルタ[備考4]等で厳しく制限すると逆効果かもしれず、そうした設定はあえて行いませんでした。但し、ユーザビリティに影響の無い対策は実施しました。また、このお宅の方にはネットワークの暗部の話を紹介し、見えているWiFiスポットに安直に接続しないよう釘はさしておきました。ノートPCは持ち運ぶ様子が無かったことから、機内モードWiFi無効にして有線LAN接続としました。  

FAXは、もうなくなると言われて20年・・・無くなりません。ひかり電話の通信方式はIP電話と同じデジタルですが、ネット上ではプレミア級の最優先独自ルート/遅延レスなので、FAXができてしまいます。


備考1:FAX通信方式(T.30)ではネット遅延は想定されておらず、050系やフリーのIP電話では安定しないこともあるようです。 
備考2:WiMAXでの通信品質は電波環境次第です。過度な期待は禁物ですが、WiMAXルータ端末を自由に移動できる点は強みです。また、自作アンテナでも速度アップできるようです。なお、私ならNEC製の端末を選びます。
備考3:ひかり電話の無い別の親類宅(有識者在住)では、以下のようになっています。

f:id:t0a9n9a4k:20201010082944p:plain

 備考4:最近、iPhoneAndroidMACアドレス適用が乱数化されましたので、MACアドレスフィルタをかけている環境ではスマホの設定変更が必要です。MACアドレスフィルタは意味が無いという見方がありますが、これは、ケースバイケースです。

最近の日本のSF小説

オービタル・クラウド 書評リンク

ラズパイ・アラカルトでも紹介したが、衛星・サイバー・IoTの勉強になる。但し、もうそろそろ賞味期限だ。

 

ジェノサイド 書評リンク

世界の暗部で起きている(ウイルスではない)課題のひとつを疑似体験しながら、現代技術にも触れられるSF推理小説。「終戦のローレライ」に近いが、ひと味違う、何か強烈な印象を残した。但し、この小説も、そろそろ賞味期限かもしれない。

 

新世界より 書評リンク

風の谷のナウシカ」に超能力のエッセンスを加えた印象。一気に読み終えたが・・・・何か残ったかと言えば、現時点では何も無く、もう1回読む気もしないが、アニメ化されていて動画サイトで見れるので、少しのぞいてみようかとは思う。

 

山彦

Kindleオーナーライブラリー(月1冊無料)で読んだ、若干ホラーな山岳SF小説。ホラー度合いは私の許容範囲ぎりぎりであり、途中リタイアしそうになったが、山の風景描写がとても丁寧で美しいので、読み続けられた。山に登る人なら印象に残る小説になると思う。

 

天冥の標

申し訳ありません。当初はすばらしいと思いましたが、読み進めると許容範囲を超える内容がありました。おすすめできません。

 

半沢直樹

私から見れば半沢直樹は宇宙人だが、会社をなめて入った私達バブル世代に共通の何かがあるように感じる。ドラマでは原作と違う設定と迫力があり、面白いし、泣ける。盆明けは前向きに仕事に取り組めそうだ。但し、真似したら絶対に体が持たない! やられたら受け流す、マイペースで感謝と恩返しだ。

 

 

ffmpegの技

アスペクト比変換/センタリング/ダイエット
古いカーナビ向け調整。ベンチマークでも良く使う。

av_aspect.sh:

#!/bin/bash
width=800
height=$(( $width * 480 / 800 ))
# PV000_ は変換後ファイルの目印、兼ランダムプレイのヘッダとして付与
ffmpeg -i "$1" -c:a copy \
-vf "scale=iw*min($width/iw\,$height/ih):ih*min($width/iw\,$height/ih), pad=$width:$height:($width-iw*min($width/iw\,$height/ih))/2:($height-ih*min($width/iw\,$height/ih))/2" \
PV000_"$1"


ランダム再生支援
PV000_*.mp4はリネームしない(優先プレイ)。解消するにはav_rename.sh -cを先に実行。

av_rename.sh:

#!/bin/bash

_usage() {
    echo "usage:"
    echo "${0} -c -u -t"
    exit 1
}

if [ "$#" = "0" ]; then
    _usage
fi

while getopts "ctu" OPT
do
    case $OPT in
        c)  headerclean=1
            ;;
        t)  testmode=1
            ;;
        u)  update=1
            ;;
        :|\?) _usage;;
    esac
done

if [ $headerclean ] ; then
    ## ヘッダがあれば除去し終了
    echo "mp4ファイルのPVXXXを除去します。"
    for file in *.mp4; do
    if [ "${file::2}" = "PV" ] ; then
        ## 既に一度ヘッダを付加済みのファイル
        newfile="${file:6}"
        mv "$file" "$newfile"
    fi
    done
    echo "mp4ファイルのPVXXXを除去しました。"
    exit 0
else
    ## ヘッダ付加または更新
    for file in *.mp4; do
        ## PV000で始まるファイルはリネームしない。
        if [ "${file::5}" = "PV000" ] ; then
            continue
        fi
        rand=$((RANDOM%1000))
        head=`printf "PV%03d_" $rand`
        if [ "${file::2}" = "PV" ] ; then
            ## 既に一度ヘッダを付加済みのファイル
            newfile="${head}${file:6}"
        else
            newfile="${head}${file}"
        fi
        printf "${file} ==> ${newfile}"
        if [ $testmode ] ; then
            printf " :: テストモード\n"
        else
            mv "$file" "$newfile"
            printf " :: 更新完了\n"
        fi
    done
fi



その他のコマンド:

## 先頭7秒カット(再エンコせずカット&コピーする方式)
ffmpeg -ss 7 -i input.mp4 -vcodec copy -acodec copy output.mp4

## うまくいかないときは、-ssの位置を変える。処理が異なるらしい。
ffmpeg  -i input.mp4 -ss 7 -vcodec copy -acodec copy output.mp4

## 800:480 中央からカット(クロップ)
ffmpeg -i input.mp4 -c:a copy -vf crop=800:480 output.mp4

## ボリュームアップ
ffmpeg -i input.mp4 -vcodec copy -af volume=10dB output.mp4

## オーディオ抽出
ffmpeg -i input.mp4 -vn -f mp3 output.mp3

## 左右反転
ffmpeg -i input.mp4 -vf hflip output.mp4

## 静止画にする
convert -resize 800x480! 静止画.jpg seisiga.jpg  ## 静止画のアスペクト比調整
ffmpeg -i input.mp4 -vf output.mp4  ## 動画を除去
ffpmeg -i seisiga.jpg -i output.mp4 -vcodec mpeg4 -acodec copy new.mp4  ## マージ

パワーヨガ

でも会社でも椅子に座っている時間が長くなり、気が付くと姿勢がとても悪くなっていて、そのせいで左股関節に違和感を感じはじめていました。毎年この梅雨入りの季節、体のどこかを痛めてしまいます。そこで、勇気振り絞って、ちょっとパワー系のヨガクラス(初心者向け)に初めて参加してみました。

マスクの裏では結構緊張した顔をしていたはずですが、、、始まると緊張感はすぐに解け、いろいろなポーズをキープするのに夢中になり、終わると股関節の違和感がほぼ解消されていて、その後のトレーニングでは体のキレが良く、翌日からは体調がとてもいいです。

私の体は、前向きはとても硬いのですが、なぜか後ろ向きには柔らかく、若い頃は倒立からのバックブリッジを一発芸にしていました。

『ベーイ・ブリッジ!』
・・・今はもう無理です。

私が通っているジムは、徹底した ソーシャルディスタンス、検温、消毒、全員マスクで、安心して参加できます。

  

Ubuntu Studio 20.04でScreenlets

お風呂のカビ掃除やらキッチンの油汚れ落としやらで、指紋が無くなってしまった今日この頃、みなさま如何お過ごしでしょうか?

Ubuntu 20.04がリリースされたので、手元のホビーマシンをアップグレードしたら、やっぱりScreenletsの一部が動かなくなりましたので、下記の処置をしました。

sudo apt install libpython2.7
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python/python-gconf_2.28.1+dfsg-1.2_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/main/b/beautifulsoup/python-beautifulsoup_3.2.1-1_all.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/p/pygtk/python-gtk2_2.24.0-6_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python-desktop/python-wnck_2.32.0+dfsg-3_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python-desktop/python-rsvg_2.32.0+dfsg-3_amd64.deb
sudo dpkg -i *.deb

あとは、過去のUbuntu Mate 18.04やDebian10でのScreenletsの処置で行けると思います。やはりメンテ切れガジェットはリスクがありますので、組込での開発環境やホビー専用マシンなどでの、限定的なご利用が良いかと思います。

次は、CentOS 8で・・・

サイバー空間のウイルスたち

新しいマスクだと息苦しい気がする今日この頃、みなさま如何お過ごしでしょうか?

サイバーの世界でも、ウイルスやマルウェアが日々進化しております。在宅テレワーク対応のために自宅WiFiルータを買ったり、自宅にインターネット回線を新たに導入したり、はたまた、押入れの奥底から古いWiFiルータを引っ張り出してきたり、運動不足解消のためWii Fitに久々に電源を入れて「お久しぶりです」と声をかけられた方もいらっしゃるかと思います。

自宅インターネットで使う通信機器の接続や設定は、IPアドレスやMACアドレスになじみの無い方にとっては非常に難解であり、ご苦労されるとは思います。しかし、つながって万歳!だと、いずれ、痛い目を見ますから、本当に要注意です。

特に注意する点

  • 古い機材を持ち出して接続する時
    例えば、古いニンンテンドーDS等を繋いだことのあるWiFiルータは、その設定のままだと危険です。
  • 久々にネット機器をネットにつなぐとき
    ファームウェアが古くて無防備になっている可能性があります。
  • 上記のような環境では、ネットバンキング、ネットショッピング、個人情報含むやりとり等は避けた方がいいでしょう。

最近の機材は、最近までの諸問題を回避できる初期状態と初期設定手順になっています。しかしそれでも、隙を見せれば自宅の通信機器、パソコン、スマホ、ゲーム機がウイルス・マルウェアに感染し、潜伏し、忘れた頃(1~3年後)に発症します。潜伏期間は想像以上に長期間です。その間にウイルス・マルウェアは仲間を呼び、連携し、自己進化し、システムを構築し、ここぞっ!という時を待ちます。ここぞっ!という時に直接被害を受けなくても、自宅の機材が悪事の手助けをしたり、その踏み台になったりします。

バンキング/ショッピングは、iPhoneか、無駄アプリの無いAndroidの方が安全とされています。できればWiFiオフとして、3G/4Gスマホ回線を使う方が良いと思います。

私は、バンキング/ショッピング専用PCを使い、ホビーマシンと物理的に分離しています。以前は仮想マシンを使って分離していたこともありますが、今はNGです。ゲストOSとホストOSを乗り移る技があります。

ネット機器のファームウェア、パソコンのWindows10、ウイルス対策ソフト等を、アップデートで最新の状態にしておくだけで、ある程度はリスク回避できます。更には、有識者によるちょっとした対策(初期設定のままでの運用回避、ファイアウォールのテコ入れ、MACアドレスフィルタリング、パスワード類の変更、・・・)で、大部分は回避できます。みなさま、本当にお気を付けて。

5Gという新しいサイバー空間のビッグバン目前で、現実の世界がこのありさまですが、どうかみなさま健康に気をつけてがんばってください。

 

なお、以下は、あくまでも個人的な対応ですが、WiFi 5Ghz帯を近距離で長時間浴びると、どうも頭痛になりやすく、自宅では5GHz帯を停止しました。科学的/医学的な根拠は無く、気のせいかもしれません。ちなみに機器は日本製(中身はどうだか・・・)です。2.4GHz帯は、電子レンジを使っている間は確実に通信が途切れてしまいますが、頭痛にはなりません。電子レンジは昔からあるので、慣れているのかもしれません。5G(第五世代)スマホの電波は、3.6~6GHz、それに28GHzとのこと。この電波が地球を覆いつくすと、どうなるのでしょう???