2009-01-06から1日間の記事一覧

NetBSD-5.0BETA/macppcのSMP実装を駆け足で

i386のSMP実装がどうなっているのかではなく、一般的なSMP実装がどうなっているのかについて調べたいので、macppcも眺めてみる。 void cpuattach(parent, self, aux) struct device *parent, *self; void *aux; { struct cpu_info *ci; struct confargs *ca …

NetBSD-5.0BETA/i386のSMP実装#4

どこから2コア目以降が起動するのか分かった(と思う)。 NetBSD-5.0BETA/i386のSMP実装#1 - かーねる・う゛いえむにっきでちょっと触れたmpbios_scan()の中で、lapic_boot_init()を呼んでいる箇所がある: /* * looks like we've got a MP system. start se…

NetBSD-5.0BETA/i386のSMP実装#3

再びconfigure()を追ってみる。 cpu_configure()が行われた後、SMPに関係ありそうな部分を探していくと、以下のようなコードが見つかった: /* Boot the secondary processors. */ for (CPU_INFO_FOREACH(cii, ci)) { uvm_cpu_attach(ci); } mp_online = tru…