qemu-system-sparc64에서 Sparc용 Solaris 10 또는 11 부팅

qemu-system-sparc64에서 Sparc용 Solaris 10 또는 11 부팅

SPARC를 사용하여 Solaris 10 또는 Solaris 11 부팅을 시도했지만 qemu-system-sparc64초기에는 계속 문제가 발생했습니다. 저는 SUN의 ^WOracle 웹 사이트에서 제공되는 DVD 이미지를 사용하고 있습니다 sol-10-u11-ga-sparc-dvd.iso.sol-11_2-text-sparc.iso

솔라리스 10을 사용해 보세요:

$ qemu-system-sparc64 -m 1024 -cdrom /tank/images/sol-10-u11-ga-sparc-dvd.iso -boot d -nographic
OpenBIOS for Sparc64
Configuration device id QEMU version 1 machine id 0
kernel cmdline
CPUs: 1 x SUNW,UltraSPARC-IIi
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.1 built on Mar 12 2015 08:09
  Type 'help' for detailed information
Trying cdrom:f...
Not a bootable ELF image
Not a bootable a.out image

Loading FCode image...
Loaded 7420 bytes
entry point is 0x4000
Ignoring failed claim for va 1000000 memsz af6d6!
Ignoring failed claim for va 1402000 memsz 4dcc8!
Ignoring failed claim for va 1800000 memsz 510c8!

Jumping to entry point 00000000010071d8 for type 0000000000000001...
switching to new context: entry point 0x10071d8 stack 0x00000000ffe8aa09
warning:interpret: exception -13 caught
Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
spacex@:interpret: exception -13 caught
interpret h# d constant MMU_PAGESHIFT h# 0 constant TTE8K h# 20 constant SFHME_SIZE h# 0 constant SFHME_TTE h# 8 constant HMEBLK_TAG h# 0 constant HMEBLK_NEXT h# 2c constant HMEBLK_MISC h# 38 constant HMEBLK_HME1 h# 8 constant NHMENTS h# 7 constant HBLK_SZMASK h# 10 constant HBLK_RANGE_SHIFT h# 8 constant HMEBP_HBLK h# 1 constant HMEBLK_ENDPA h# 20 constant HMEBUCKET_SIZE h# 0 constant HTAG_SFMMUPSZ h# d constant HTAG_BSPAGE_SHIFT h# a constant HTAG_REHASH_SHIFT h# 3ff constant SFMMU_INVALID_SHMERID h# 3 ccould not find debugger-vocabulary-hook>threads:interpret: exception -13 caught
interpret \ Copyright (c) 1995-1999 by Sun Microsystems, Inc.
\ All rights reserved.
\
\ ident "@(#)data64.fth 1.3     00/07/17 SMI"

hex

only forth also definitions
vocabulary kdbg-words
also kdbg-words definitions

defer p@
defer p!
['] x@ is p@
['] x! is p!

8 constant ptrsize

d# 32 constant nbitsminor
h# ffffffff constant maxmin
\
\ Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
\ Use is subject to license terms.
\

\ #pragma ident "@(#)kdbg.fth   1.20    08/06/06 SMI"

h# 7ff constant v9bias
h# Unhandled Exception 0x0000000000000008
PC = 0x0000000000000000 NPC = 0x0000000000000000
Stopping execution
qemu: fatal: Trap 0x0032 while trap level (5) >= MAXTL (5), Error state
pc: 00000000ffd04640  npc: 00000000ffd04644
%g0-3: 0000000000000000 00000000c40aaab5 00000000c3fb6875 00000000ffe11e38
%g4-7: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
%o0-3: 000001fe020003f8 000001fff0080886 0000000000000000 0000000000000000
%o4-7: 00000000ffeabc00 0000000000000000 00000000ffe812c1 000001fff000ccb8
%l0-3: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
%l4-7: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
%i0-3: 0000000000000000 0000030000f8de5d 0000000000000000 0000000000000002
%i4-7: 0000000000000012 00000000ffe8b000 00000000ffe81371 00000000ffd0c6c0
%f00:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f08:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f16:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f24:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f32:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f40:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f48:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f56:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
pstate: 00000015 ccr: 44 (icc: -Z-- xcc: -Z--) asi: 80 tl: 5 pil: 0
cansave: 7 canrestore: 0 otherwin: 0 wstate: 0 cleanwin: 7 cwp: 1
fsr: 0000000000000000 y: 0000000000000000 fprs: 0000000000000000

Abort trap

솔라리스 11을 사용해 보세요:

qemu-system-sparc64 -m 1024 -cdrom /tank/images/sol-11_2-text-sparc.iso -boot d -nographic
OpenBIOS for Sparc64
Configuration device id QEMU version 1 machine id 0
kernel cmdline
CPUs: 1 x SUNW,UltraSPARC-IIi
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.1 built on Mar 12 2015 08:09
  Type 'help' for detailed information
Trying cdrom:f...
Not a bootable ELF image
Not a bootable a.out image

Loading FCode image...
Loaded 6636 bytes
entry point is 0x4000
Ignoring failed claim for va 1000000 memsz c107e!
Ignoring failed claim for va 1402000 memsz 5a6e0!
Ignoring failed claim for va 1800000 memsz 52240!

Jumping to entry point 00000000010071f8 for type 0000000000000001...
switching to new context: entry point 0x10071f8 stack 0x00000000ffe8aa09
'SUNW,UltraSPARC-IIi' is not supported by this release of Solaris.
EXIT
0 >

지원되는 CPU를 찾기 위해 옵션 을 사용해 보았지만 -cpu help, 어떤 문자열을 줘도 이해하지 못했습니다.

QEMU에서 sparc64를 사용하여 원래 Solaris 10 또는 11을 부팅한 사람이 있습니까? 또 무엇을 시도해야 합니까?

추신: SPARC 하드웨어를 구입하거나 32비트 SPARC 및 고대 Solaris 9 이전 버전을 에뮬레이트하거나 Solaris x86을 사용할 수 있는 옵션은 없습니다.

답변1

나는 얼마 전에 이 문제를 직접 찾고 있었지만 불행히도 sparc64와 함께 QEMU를 사용하여 Solaris 10(또는 11)을 부팅하는 데 성공하지 못했습니다. 이 페이지를 읽은 후 시도를 중단했습니다.http://wiki.qemu.org/download/qemu-doc.html#QEMU-System-emulator-for-non-PC-targets섹션 4.3에서는 에뮬레이터를 사용할 수 없지만 일부 커널은 부팅할 수 있다고 명시합니다.

답변2

Qemu-system-sparc64는 사용자 정의 BIOS(이전 Sparc 워크스테이션에서 가져온)를 사용하여 이전 버전의 Solaris 6 이하 버전만 성공적으로 부팅하고 실행할 수 있습니다. 물론 Solaris 8 또는 9와 같은 다음 버전을 사용해 볼 수 있습니다. 참고로 kvm 모듈은 x86 아키텍처에서만 작동하므로 Sparc 에뮬레이션은 매우 느립니다. 이것훌륭한 가이드입니다.

관련 정보