Simics

Simics
Oryginalni autorzy SICS , Virtutech
Deweloperzy Intel
Wersja stabilna
6 / 2019
Napisane w C, DML, Python, Simgen, skrypty Simics CLI, C++, Rust, Javascript, Java
Typ Symulator pełnego systemu
Licencja Prawnie zastrzeżony
Strona internetowa programista .intel .com /simics-symulator

Simics to pełnosystemowy symulator lub wirtualna platforma służąca do uruchamiania niezmienionych produkcyjnych plików binarnych docelowego sprzętu. Simics został pierwotnie opracowany przez Szwedzki Instytut Informatyki (SICS), a następnie został wydzielony do Virtutech w celu komercyjnego rozwoju w 1998 roku. Virtutech został przejęty przez firmę Intel w 2010 roku. Obecnie Simics jest udostępniany publicznie przez firmę Intel i sprzedawany komercyjnie przez Wind River Systems , która w przeszłości była spółką zależną Intela.

Simics zawiera zarówno symulatory zestawów instrukcji , jak i modele sprzętowe i jest lub był używany do symulacji systemów takich jak Alpha , IA-64 , ARM (32- i 64-bitowy), MIPS (32- i 64-bitowy), MSP430 , PowerPC ( 32- i 64-bitowe ), SPARC-V8 i V9 oraz procesory x86 i x86-64 . Wiele systemów operacyjnych zostało uruchomionych na różnych odmianach symulowanego sprzętu, w tym MS-DOS , Windows , VxWorks , OSE , Solaris , FreeBSD , Linux , QNX , RTEMS i UEFI .

NetBSD AMD64 został początkowo opracowany przy użyciu Simics przed publicznym wydaniem chipa. Celem symulacji w Simics jest często tworzenie oprogramowania dla określonego typu sprzętu bez konieczności dostępu do tego konkretnego sprzętu, używając Simics jako platformy wirtualnej . Może to mieć zastosowanie zarówno do opracowywania oprogramowania przedpremierowego, jak i przed krzemowego dla przyszłego sprzętu, a także dla istniejącego sprzętu. Intel używa Simics, aby zapewnić swojemu ekosystemowi dostęp do przyszłych platform na miesiące lub lata przed premierą sprzętu.

Obecna wersja Simics to 6, która została wydana publicznie w 2019 roku. Simics działa na 64-bitowych maszynach z architekturą Intel z systemami Microsoft Windows i Linux (obsługa 32-bitów została usunięta wraz z wydaniem Simics 5, ponieważ 64-bit zapewnia znaczne korzyści w zakresie wydajności i jest powszechnie dostępny na obecnym sprzęcie). Poprzednia wersja, Simics 5, została wydana w 2015 roku.

Simics ma możliwość wykonania systemu w kierunku do przodu i do tyłu. Debugowanie odwrotne może wyjaśnić, w jaki sposób wystąpił wyjątkowy warunek lub błąd . Podczas wykonywania systemu operacyjnego, takiego jak Linux, w odwrotnej kolejności przy użyciu Simics, wcześniej usunięte pliki pojawiają się ponownie, gdy punkt usunięcia zostanie przekazany w odwrotnej kolejności i przewijanie, a inne aktualizacje wyświetlacza graficznego i konsoli również następują wstecz.

Simics został zbudowany z myślą o wysokiej wydajności wykonywania modeli całego systemu i wykorzystuje zarówno translację binarną , jak i wspomaganą sprzętowo wirtualizację w celu zwiększenia szybkości symulacji. Jest natywnie wielowątkowy i może symulować wiele docelowych (lub gości) procesorów i płyt przy użyciu wielu wątków hosta. Był używany do uruchamiania symulacji zawierających setki procesorów docelowych.

Zobacz też

  • ARM Fastsim , symulator z zestawem instrukcji i zestaw modeli systemów dla ARM IP.
  • Gem5 , pełny system open source oraz symulator i platforma ISA.
  • OVPsim , platforma symulacji pełnego systemu, która jest bezpłatna do użytku niekomercyjnego i która zawiera ponad 100 modeli i platform open source z systemem Linux, Android i wieloma innymi systemami operacyjnymi.
  • Qemu , program typu open source, który może przeprowadzać symulację całego systemu w taki sam sposób jak Simics, w tym wykorzystywać wirtualizację sprzętową do przyspieszenia wykonywania X86 lub X86.
  • SPIM , symulator procesora MIPS przeznaczony do uruchamiania R2000, R3000 itp.
  • Symulator zestawu instrukcji

Linki zewnętrzne