最終更新日: 2019-10-09 水 22:36
ホーム | 文書トップ | 目次

日記(2019年)

Table of Contents

10月9日(水)

Gitフォークの同期

10月6日(日)

プロセスアフィニティマスクの設定

使用するCPUを限定させてWindowsプログラムを実行する必要があり、試してみた。

C言語でWin32APIの記述で"CPU 0"に限定するのであれば、下記の1行で実現できる。

SetProcessAffinityMask(OpenProcess(PROCESS_ALL_ACCESS,FALSE,GetCurrentProcessId()),(DWORD_PTR)0x1);

下記サンプルコードで確認した。

#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#include <windows.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <process.h>

//DWORD WINAPI GetCurrentProcessId(void);

//HANDLE OpenProcess(
//  DWORD dwDesiredAccess,  // アクセスフラグ
//  BOOL bInheritHandle,    // ハンドルの継承オプション
//  DWORD dwProcessId       // プロセス識別子
//);

//BOOL SetProcessAffinityMask(
//  HANDLE    hProcess,
//  DWORD_PTR dwProcessAffinityMask
//);

int
main(int argc,char *argv[])
{
    SetProcessAffinityMask(OpenProcess(PROCESS_ALL_ACCESS,FALSE,GetCurrentProcessId()),(DWORD_PTR)0x1);

    /* ここで "CPU 0" のみがチェックされた状態になっている */

    printf("Hello,World!\n");

    return 0;
}

SetProcessAffinityMask.png

8月17日(土)

8月11日(日)

8月4日(日)

6月23日(日)

6月22日(土)

6月2日(日)

5月6日(月)

Canon EF-M32mm F1.4 STM

半年くらい悩んだ末に買ったのです。買ってよかったです。

3月21日(木)

Chrome拡張機能「Simple URL Copy」のコピー形式に Org mode を追加してみた

3月3日(日)

1クリックでページタイトルとURLをコピーできるChrome拡張機能「Simple URL Copy」

これはいい。。org-modeのスタイルにも対応して欲しい。

Bazelをオフライン環境でビルドする

TensorFlowをソースからコンパイルする中で。

ファイルを置いたディレクトリで SimpleHTTPServer を起動して対処する方法。なるほど!

$ python -m SimpleHTTPServer 8000&
[1] 30369
Serving HTTP on 0.0.0.0 port 8000 ...

2月27日(水)

2月17日(日)

Real World PlantUML

2月10日(日)

2月9日(土)

Subversionリポジトリのコピー

1月27日(日)

Emacs関連

近年で最も影響を受けた記事。

Xerox、PARC、Alto、Smalltalk

Mac、WindowsのGUIの元になったものは、ゼロックスのパロアルト研究所が開発した技術だった、ということは知っていたが、具体的なことはあまり知らなかった。

調べた限りでは、

「ゼロックスのパロアルト研究所で開発されたコンピュータである Alto 上 で動作する Smalltalk環境 の GUIが、Mac、WindowsのGUIに大きな影響を与えた」ということのようである。

アラン・ケイが手がけたSmalltalkはオブジェクト指向の元祖として知られているが、現在のPCのGUIの元祖でもあるということ。

改めて、アラン・ケイの偉大さに驚かされる。

上記には、

「ケイはプログラミングもするが、主だってはアイデアパーソンである。 Altoの製作、Smalltalk開発には、多くの人の関与が不可欠であり、 ケイがすべてを短期間で実現したかのような記述は原則として誤り」

とあるが、全てを一人で実現したかどうかはそれほど重要ではない。

理想を掲げ、実現に向けて取り組み続けていることが重要。

1970年代に「暫定ダイナブック環境」として、実際に動くモノをつくったことが、Macや、Windowsの実現に繋がったのである。

もちろんアラン・ケイだけが偉大とは思わないが、もっと評価されるべき人だと思う。

個人的には、「ダイナブック」は、コストを除けはハードウェアは現在の iPad + キーボードでほぼ実現できている気がする。

あとは、「このシステム自体をもユーザーが自由な発想で再定義できる」(上記の引用)ソフトウェアがあればよいのだ。

それはOSでありつつも、ある種のプログラミング環境である必要がある。

プログラミング環境として、例えば、専門的な技術が必要だが、テキスト編集に特化したものであれば emacs-lisp を備えた Emacs や、

それほど専門的な技術が無くても使えるGUIでプログラミングができる Scratch をどうにか使えないか、と思うが、やはりそれだけでは全然足りない。

難しいのは、ユーザが必要としている情報として、テキスト、表計算、画像、音楽、映像等のフォーマットが違いすぎるところなのかもしれない。

そうすると、必要なのは、情報と人間の脳とのアクセスを、より直接的に行うインタフェースである気もする。

1月6日(日)

org-mode ページ内リンク方法

リンク先のこのように PROPERTIES で CUSTOM_ID を "test"として記述すると、

* タイトル
    :PROPERTIES:
    :CUSTOM_ID: test
    :END:

このように対応するタグ(ここではh2)に id = "test" が記載される。

ちなみに、org-set-property(C-c C-x p) で簡単にプロパティを入力できる。

<h2 id="test"><a id="orgd13cc58"></a>タイトル</h2>

リンクを作成するには下記のように、記述すれば、

[[file:sample.org::#test][リンク先に飛ぶ]]

下記のようなhtmlに変換される。

<p>
<a href="sample.html#test">リンク先に飛ぶ</a>
</p>

同一ファイル内であれば、下記の記述でOK。

[[file:::#test][リンク先に飛ぶ]]

ちなみに、:ID: でなくて :CUSTOM_ID: なのは、:ID: は下記のように org-id-get-create で自動でIDを取得して生成するものであるから、と理解した。

:PROPERTIES:
:ID:       fdf79dce-176f-4002-a910-ddb44b7284a1
:END:

TANNOY REVEAL 402

長年(かれこれ23年くらい・・・)使っている SMS-1P のガリがあまりにひどいのでそろそろ買い替えようとも思う。

大きさ、値段、メーカー等から考えると候補となるのはこれ。サンレコ等で使用している人は見たことないが。

1月4日(金)

NTEmacs IMEパッチ関連のコンテンツ整理

NTEmacsIMEパッチ あたりのコンテンツを整理。

いろいろ振り返ってみると、2010年 から、NTEmacs(当時バージョン23.1)を使い始めていたらしい。

なにげに当時の検討内容が役に立つ。「日本語入力時(IME ON時)はキャレットの色を緑にする」とか・・・


日記(2018年)へ

ホーム | 文書トップ | 目次
Created by Emacs 26.2 (Org mode 9.1.9)