{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

Chapter14Rev01 - Chapter 14 Putting them All Together This...

Info icon This preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
1 Chapter 14 Putting them All Together This book has been a journey “inside the box.” It is worthwhile to look back at each of the topics we covered in the book and see the inter-relationship between system software and hardware. 14.1 Processor Design We saw that high-level language constructs played a key role in the design of the instruction set and related architectural features of the processor. Table 14.1 summarizes the HLL constructs and features that give rise to the architectural decisions in a processor. HLL Construct/Feature Architectural features Expressions Arithmetic/logic instructions, addressing modes Data types Different operand granularity, multiple precision arithmetic and logic instructions Predicated execution, loops Conditional and unconditional branch instructions Procedure call/return Stack, link register Exceptions Traps Efficient execution of HLL programs (expressions, parameter passing, etc.) General Purpose Registers Table 14.1: HLL and Architectural Features Of course, once the architecture is fully specified, we saw that there were several implementation choices such as a simple design and a pipelined design. It is fair to say that we have only scratched the surface of the exciting area of micro-architecture in this book. We hope that we have perked the readers’ interest sufficiently for them to dig deeper into this fascinating area through further in-depth courses in computer architecture. 14.2 Process The process concept served as a convenient abstraction for remembering all the relevant details of a running program. We know that the processor can run only one program at a time. The operating system gives the illusion of each process having its own processor to run on. To support this illusion the architecture provides the trap, and interrupt mechanisms. It is via these mechanisms that the operating system (which is itself a program) gets control of the processor to make a scheduling decision as to which user program to run next. We saw several algorithms that an operating system may employ to make such a scheduling decision. We also reviewed the data structures needed by the
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon