スキップしてメイン コンテンツに移動

プライバシーポリシー

個人情報の保護について

「https://doutan.blogspot.jp」(以下、当サイト)を利用される方は、以下に記載する諸条件に同意したものとみなします。

個人情報の収集について

利用者は匿名のままで、当サイトを自由に閲覧する事ができます。お問合せ等、場合によっては、利用者の氏名やメールアドレスなどの個人情報の開示をお願いする事があります。しかし、利用者の個人情報を利用者の許可なく、当サイトから第三者へ開示・共有する事はありません。

広告の配信について

当サイトはGoogle及びGoogleのパートナーウェブサイト(第三者配信事業者)の提供する広告を設置しております。その広告配信にはCookieを使用し、当サイトを含めた過去のアクセス情報に基づいて広告を配信します。 DoubleClick Cookie を使用することにより、GoogleやGoogleのパートナーは当サイトや他のサイトへのアクセス情報に基づいて、適切な広告を当サイト上でお客様に表示できます。 お客様はGoogleアカウントの広告設定ページで、パーソナライズ広告の掲載に使用される DoubleClick Cookie を無効にできます。また aboutads.info にアクセスして頂き、パーソナライズ広告の掲載に使用される第三者配信事業者のCookieを無効にできます。 その他、Googleの広告における、Cookieの取り扱いについての詳細は、Googleのポリシーと規約ページをご覧ください。

ウェブサーバの記録

当サイトのウェブサーバは、利用者のコンピュータのIPアドレスを自動的に収集・記録しますが、これらは利用者個人を特定するものではありません。利用者が自ら個人情報を開示しない限り、利用者は匿名のままで、当サイトを自由に閲覧する事ができます。

免責事項

利用者は、当サイトを閲覧し、その内容を参照した事によって何かしらの損害を被った場合でも、当サイト管理者は責任を負いません。また、当サイトからリンクされた、当サイト以外のウェブサイトの内容やサービスに関して、当サイトの個人情報の保護についての諸条件は適用されません。 当サイト以外のウェブサイトの内容及び、個人情報の保護に関しても、当サイト管理者は責任を負いません。

コメント

このブログの人気の投稿

Initial run-length encoding@bzip2を読んでみた

Wikipediaのbzip2圧縮アルゴリズムの一部を読んだので意訳して紹介します。 参考にしたソースコードは bzip2-1.0.6 です。 Wikipedia https://en.wikipedia.org/wiki/Bzip2#Initial_run-length_encoding bzip2 ソースコード https://github.com/junkawa/bzip2/tree/master/bzip2-1.0.6 概要 bzip2では、入力データを読み込んだ時( copy_input_until_stop()@bzlib.c → ADD_CHAR_TO_BLOCK() → add_pair_to_block() ) に ランレングス符号化 を行う。 Wikipedia Any sequence of 4 to 255 consecutive duplicate symbols is replaced by the first four symbols and a repeat length between 0 and 251.   4〜255回、同じシンボルが連続した場合、「最初の4シンボル+残りの繰り返し回数」に置き換わる。 Thus the sequence "AAAAAAABBBBCCCD" is replaced with "AAAA\3BBBB\0CCCD", where "\3" and "\0" represent byte values 3 and 0 respectively.  "AAAAAAABBBBCCCD"は、"AAAA\3BBBB\0CCCD"に置き換わる。 AAAAAAA (Aが7回)は、最初の4シンボル(AAAA) + 残りの繰り返し回数(3)となる。 BBBB (Bが4回)は、最初の4シンボル(BBBB) + 残りの繰り返し回数(0)となる。 C,Dは連続回数が4回に達しないのでそのままとなる。 ここでは分かりやすさのため、A,B,Cというシンボルを使っているが、実際のbzip2では1シンボルは1バイト(0〜255の値)。 したがって、シンボル7...

Zephyr build (4)

この記事で関係するターゲット $(TMP_ELF) ターゲット このターゲットは、アーキテクチャに関係なく実行される(x86依存ではない)。 [zephyr_base]/Makefile $(TMP_ELF): $(zephyr-deps) $(KBUILD_ZEPHYR_APP) linker.cmd $(KERNEL_NAME).lnk $(Q)$(CC) -T linker.cmd @$(KERNEL_NAME).lnk -o $@ $(TMP_ELF) 前の記事 参照。 $(zephyr-deps) TODO 後で調べる $(KBUILD_ZEPHYR_APP) 未定義 $(KERNEL_NAME).lnk zephyr.lnk $(KERNEL_NAME) については、 前の記事 参照。 $(Q)$(CC) -T linker.cmd @$(KERNEL_NAME).lnk -o $@ /Volumes/CrossToolNG/x-tools/i586-pc-elf/bin/i586-pc-elf-gcc -T linker.cmd @zephyr.lnk -o .tmp_zephyr.prebuilt リンカスクリプト (linker.cmd)、リンカオプション(zephyr.lnk)を使い、.tmp_zephyr.prebuilt を生成する。 linker.cmd [zephyr_base]/samples/hello_world/microkernel/outdir/linker.cmd 次の記事 参照 zephyr.lnk [zephyr_base]/Makefile 次の記事 参照

Zephyr build (2)

この記事で関係するターゲット qemu ターゲット [zephyr_base]/Makefile qemu: zephyr (省略) 詳細は 前の記事 参照。 zephyrターゲット [zephyr_base]/Makefile zephyr: $(zephyr-deps) $(KERNEL_BIN_NAME) $(zephyr-deps) [zephyr_base]/Makefile $(zephyr-deps) := $(KBUILD_LDS) $(KBUILD_ZEPHYR_MAIN) TODO 後で調べる $(KERNEL_BIN_NAME) zephyr.bin [zephyr_base]/samples/hello_world/microkernel/outdir/.config CONFIG_KERNEL_BIN_NAME="zephyr" TODO .config の生成方法(ct-ng makemenuconfigがベース?)、.config の Makefile中のinlcude箇所。 [zephyr_base]/Makefile KERNEL_NAME = $(subst $(DQUOTE),,$(CONFIG_KERNEL_BIN_NAME)) KERNEL_BIN_NAME = $(KERNEL_NAME).bin $(KERNEL_BIN_NAME) ターゲット [zephyr_base]/Makefile ifeq ($(ARCH),x86) $(KERNEL_ELF_NAME): staticIdt.o final-linker.cmd $(call cmd,lnk_elf) @$(WARN_ABOUT_ASSERT) else $(KERNEL_ELF_NAME): $(TMP_ELF) @cp $(TMP_ELF) $(KERNEL_ELF_NAME) @$(WARN_ABOUT_ASSERT) endif 今回は、ARCHがx86の場合を調べる。 staticIdt.o 次の記事 参照 final-linker.cmd TODO 調査 $(KERNEL_ELF_NAME) zephyr.elf [zephy...