Rev 78 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 78 | Rev 148 | ||
---|---|---|---|
Line 280... | Line 280... | ||
280 | It has the most advanced debugging features we have ever seen. To highlight some, its |
280 | It has the most advanced debugging features we have ever seen. To highlight some, its |
281 | memory access tracing ability has been really helpfull to us. During device driver |
281 | memory access tracing ability has been really helpfull to us. During device driver |
282 | development, we appreciated the possibility to turn logging of the devices to a specified |
282 | development, we appreciated the possibility to turn logging of the devices to a specified |
283 | verbosity. |
283 | verbosity. |
284 | 284 | ||
285 | We used it to test and develop amd64 and ia32 architectures in SMP mode and mips32 architecture in UP mode. |
285 | We used it to test and develop amd64 and ia32 architectures in SMP mode and mips32 architecture in UP mode. Simics emulates the 4Kc processor on the MIPS architecture. |
- | 286 | Unfortunately, this processor does not have an exception Reserved Instruction, which |
|
- | 287 | makes it unusable in an environment with programs using thread local storage. |
|
286 | 288 | ||
287 | Regardless of its invaluable qualities, it has still contained bugs. One of the most |
289 | Regardless of its invaluable qualities, it has still contained bugs. One of the most |
288 | serious was bug with ticket \#3351. {\OP} discovered that its BIOS rewrites kernel memory |
290 | serious was bug with ticket \#3351. {\OP} discovered that its BIOS rewrites kernel memory |
289 | during application processors start. Another bugs found were related to amd64 and mips32. |
291 | during application processors start. Another bugs found were related to amd64 and mips32. |
290 | As for amd64, Simics did not report general protection fault when {\tt EFER.NXE} was 0 and a non-executable |
292 | As for amd64, Simics did not report general protection fault when {\tt EFER.NXE} was 0 and a non-executable |