faq/c16-23
の編集
http://hrb.osask.jp/wiki/?faq/c16-23
[
リロード
|
差分
|
単語検索
|
一覧
] [
編集
|
バックアップ
|
添付
]
-- 雛形とするページ --
A
Akkie
Athlon64X2
Clover
DAsoran
Falcon
FormatRule
FrontPage
Genesis
Help
I
InterWikiName
InterWikiSandBox
InterWikiテクニカル
Jormungand
K
Kebo
Kor_Lee_Hee_Rak
Leaf
Linux
Linux/wako_memo
MOIZ99
MW
MenuBar
OSC
PG_MANA
ReadersOS
RecentDeleted
SKYDASH
SandBox
Sero
Sigle
Source
Triangle_Ld.
Zxcvbnm
advance
advance/CPU
advance/FDC
advance/FPU
advance/NotHariMain
advance/QEMUVGA
advance/RTC
advance/blike
advance/cpu_reset
advance/driver
advance/driver/01
advance/driver/02
advance/families
advance/filesystem
advance/fwrite
advance/hddboot
advance/he86
advance/hints
advance/ipl
advance/kernel
advance/keycode
advance/osselect
advance/smaller1
advance/startup
advnace/smaller2
anzy
aotatsu
banbi-
bluedwarf
bo
bugs
challengers
cybozulabsyouth11
deskmanta
esb02b
faq
faq/advance
faq/asm
faq/c00-03
faq/c04-07
faq/c08-15
faq/c16-23
faq/c24-31
faq/make
faq/others
faq/qemu
guide
guide03
guide05
guide07
hikarupsp
imp_log/0000
imp_log/0001
imp_log/0002
imp_log/0003
impressions
index
k
killer_elf
kota
lea
lea/10_memory
lea/4_color
lea/idea
lea/terms
links
logs
logs/osa_hrb/comments0000
logs/osa_hrb/rumors0000
masa
members
message
mistakes
moge32
moppoi5168
notice
osdevjp
populars
prog_index
projects
q_and_a
q_and_a_2
qa_log/0000
qa_log/0001
qa_log/0002
qa_log/0003
qa_log/0004
qa_log/0005
qa_log/0006
qa_log/0007
qa_log/0008
qa_log/0009
quark
rankings
rule
sakamoto
sasaki
spc09
spcc_30min_os
tatsu
tools
tools/bim2hrb
tools/bin2obj
tools/cc1
tools/edimg
tools/gas2nask
tools/makefont
tools/nask
tools/obj2bim
tools/sjisconv
uchan
uho
updates
violations
wako
white
win64-bit
x
ytakano
ヘルプ
リックス
質問します
整形ルール
本は買ったぞ!持ってるぞ!
練習用ページ
* 16章〜23章にまつわるQ&Aのまとめ -(by [[K]], 2006.09.06) -いろいろQ&Aが集まったと思うので、ここにまとめておこうと思います。 -ここで答えが見つからなければ、[[q_and_a]]へ! *** 質問と答え -COLOR(#0000ff){[p.317(16-2)] タスクをスリープさせるためのtask_sleep()があるが、この処理中に割り込みが起きたりしたらタスク管理情報が乱れて危険ではないか?} --はい、そのとおりです。この関数はio_cli();下で呼ばれることを想定して書きました。実際、p.319ではそのように使っています。io_sti();の状況でも呼ばれるかもしれないのなら、io_load_eflags(), io_cli(), io_store_eflags()の組み合わせではさんでおくべきでしょう。 -COLOR(#0000ff){[p.345(17-4)] コンソールへ文字コードを送るためのfifo32_put()があるが、この処理中に割り込みが起きたりしたらFIFOバッファが乱れて危険ではないか?} --はい、実はそのとおりです。これもio_cli();下で呼ばれることを想定して書きました。fifo32_put()を呼び出す歳には、前後にio_cli();とio_sti();を書き足すべきと思われます(io_load_eflags(), io_cli(), io_store_eflags()の組み合わせならさらによいかもしれない)。しかしそうなっていない部分も残っていて、これはp.694にあるとおり、わざと問題を残しておいた部分です。 * こめんと欄 #comment
タイムスタンプを変更しない
* 16章〜23章にまつわるQ&Aのまとめ -(by [[K]], 2006.09.06) -いろいろQ&Aが集まったと思うので、ここにまとめておこうと思います。 -ここで答えが見つからなければ、[[q_and_a]]へ! *** 質問と答え -COLOR(#0000ff){[p.317(16-2)] タスクをスリープさせるためのtask_sleep()があるが、この処理中に割り込みが起きたりしたらタスク管理情報が乱れて危険ではないか?} --はい、そのとおりです。この関数はio_cli();下で呼ばれることを想定して書きました。実際、p.319ではそのように使っています。io_sti();の状況でも呼ばれるかもしれないのなら、io_load_eflags(), io_cli(), io_store_eflags()の組み合わせではさんでおくべきでしょう。 -COLOR(#0000ff){[p.345(17-4)] コンソールへ文字コードを送るためのfifo32_put()があるが、この処理中に割り込みが起きたりしたらFIFOバッファが乱れて危険ではないか?} --はい、実はそのとおりです。これもio_cli();下で呼ばれることを想定して書きました。fifo32_put()を呼び出す歳には、前後にio_cli();とio_sti();を書き足すべきと思われます(io_load_eflags(), io_cli(), io_store_eflags()の組み合わせならさらによいかもしれない)。しかしそうなっていない部分も残っていて、これはp.694にあるとおり、わざと問題を残しておいた部分です。 * こめんと欄 #comment
テキスト整形のルールを表示する