free web page counters Computer Systems: A Programmer's Perspective -Download Free Ebook Now
Hot Best Seller

Computer Systems: A Programmer's Perspective

Availability: Ready to download

For Computer Organization and Architecture and Computer Systems courses in CS and EE and ECE departments. Developed out of an introductory course at Carnegie Mellon University, this text explains the important and enduring concepts underlying all computer systems, and shows the concrete ways that these ideas affect the correctness, performance, and utility of application p For Computer Organization and Architecture and Computer Systems courses in CS and EE and ECE departments. Developed out of an introductory course at Carnegie Mellon University, this text explains the important and enduring concepts underlying all computer systems, and shows the concrete ways that these ideas affect the correctness, performance, and utility of application programs. The text's concrete and hands-on approach will help students understand what is going on "under the hood" of a computer system.


Compare

For Computer Organization and Architecture and Computer Systems courses in CS and EE and ECE departments. Developed out of an introductory course at Carnegie Mellon University, this text explains the important and enduring concepts underlying all computer systems, and shows the concrete ways that these ideas affect the correctness, performance, and utility of application p For Computer Organization and Architecture and Computer Systems courses in CS and EE and ECE departments. Developed out of an introductory course at Carnegie Mellon University, this text explains the important and enduring concepts underlying all computer systems, and shows the concrete ways that these ideas affect the correctness, performance, and utility of application programs. The text's concrete and hands-on approach will help students understand what is going on "under the hood" of a computer system.

30 review for Computer Systems: A Programmer's Perspective

  1. 5 out of 5

    Morgan

    This is an easy to follow book that covers how computers work from the level of processors up to web servers. It's written for computer science students, and goes into a lot of detail about modern operating systems concepts such as virtual memory, processes, and signals. I had a lot of experience programming before reading this, but the book definitely clarified my thinking on many topics.

  2. 5 out of 5

    Ed Schwartz

    A systems book that no computer scientist should go without reading.

  3. 4 out of 5

    Ashwin

    This review is crossposted from my blog here: https://daariga.wordpress.com/2012/04... I picked up Computer Systems: A Programmer’s Perspective (2nd Edition) by Randal Bryant and David O’Hallaron while searching for a stimulating book on computer architecture or operating systems. CSAPP turned out to be a good find since it is aimed at the intersection of computer architecture, computers systems and OS. Using practical examples and problems the book walks the student through all the hardware and software knowledge that is requ This review is crossposted from my blog here: https://daariga.wordpress.com/2012/04... I picked up Computer Systems: A Programmer’s Perspective (2nd Edition) by Randal Bryant and David O’Hallaron while searching for a stimulating book on computer architecture or operating systems. CSAPP turned out to be a good find since it is aimed at the intersection of computer architecture, computers systems and OS. Using practical examples and problems the book walks the student through all the hardware and software knowledge that is required to understand how a program comes to life on a computer. Assume a student compiles a Hello world program and runs it. A plethora of hardware features and a large set of software come together to make this simple magic possible. Software like compiler, assembler, linker, loader, libraries and operating system kernel help to compile and load the program. Hardware features like hard disk, main memory, controllers, buses, cache and the processor bring the program to life. Also, hardware and software need to also act in tandem in virtual memory, system calls and interrupt handling to make the execution of a program scalable, efficient, fast and safe. This book argues that a good programmer needs to be aware of all the afore mentioned concepts and these are what the book tries to cover. Some notes about this book: The book is structured as a workbook. You read a concept, solve a problem or experiment with a program that illustrates it and then move on to the next concept. There are trivia, blurbs and practical information about IA32 (Intel) architecture and Linux where-ever necessary. This ensures that the book remains grounded in reality and never feels dry to study. The authors have tried their best to introduce as many of modern multiprocessor concepts as possible in a practical way. There is a lot missing, for example, super-scalar architecture and out-of-order execution. However, the programmer interested in these details can easily learn about them with a book like Inside The Machine. The chapters on memory hierarchy and virtual memory are the real treasure in this book. The sections on cache here and in Inside The Machine stand head-to-head as the most practical introductions to the topic. Virtual memory is an important concept, but sadly it gets short shrift in computer science education. This is because it requires the OS and hardware to work together and those subjects are typically covered by two different courses or textbooks in university. Not having to deal with such caste boundaries, this book is able to show the student how virtual memory is brought to life. The book gets a bit vague towards the end. I was not interested in and did not see any benefit for this book to touch on areas of system I/O, network programming and concurrency. I am happy to conclude that CSAPP is a stimulating book to study and work through. This book covers all the knowledge that a good programmer needs to understand how his program executes upon the OS and CPU and how to make it efficient, fast and scalable. I highly recommend Computer Systems: A Programmer’s Perspective for anyone who feel they need a better grasp of these ideas.

  4. 5 out of 5

    Ayush Bhat

    Apart from being a great Computer Architecture book, I found it to be a great introduction to the C language as well.

  5. 4 out of 5

    Fábio Botelho

    Fundamental book for computer science students and/or general people that want to understand fundamentals of computer systems: architecture basics such as pipelining and optimization, data representation, virtual memory etc., . The best thing about the book is that it gives an hands on approach with several labs that apply very well the theory into practice. This was definitely the most practical and useful book that I have read while graduating. It was helpfully in at least three to four course Fundamental book for computer science students and/or general people that want to understand fundamentals of computer systems: architecture basics such as pipelining and optimization, data representation, virtual memory etc., . The best thing about the book is that it gives an hands on approach with several labs that apply very well the theory into practice. This was definitely the most practical and useful book that I have read while graduating. It was helpfully in at least three to four courses.

  6. 5 out of 5

    Joe Cole

    Concise without leaving out important knowledge, meanwhile you don't need to worry about understanding the material. While reading the book, you feel like traveling in the computer world with a smart compass that keeps telling you everything you just need, no more, no less.

  7. 5 out of 5

    Emil Petersen

    A mental marathon. This actually did a lot for me, but I had to put many, many hours and days into it to get just the overarching concepts. I'm not sure a book is the best way to learn computer systems. While reading I looked up many, many things and found that you get excellent explanations of everything inhere via 10-20 minute YouTube videos and online exercises. If I had to choose between the internet and this book, I'd chose the internet. All the chapters are excellent, except maybe chapter A mental marathon. This actually did a lot for me, but I had to put many, many hours and days into it to get just the overarching concepts. I'm not sure a book is the best way to learn computer systems. While reading I looked up many, many things and found that you get excellent explanations of everything inhere via 10-20 minute YouTube videos and online exercises. If I had to choose between the internet and this book, I'd chose the internet. All the chapters are excellent, except maybe chapter 7 in linking and chapter 8 on exceptional control flow. Each chapter starts with some good reasons for actually spending the time to understand the given subject, which is very nice. Being new in this area of CS, I had a hard time actually assessing whether I got sufficiently around the 'need-to-know' concepts (the answer is probably 'No', and always will be).

  8. 5 out of 5

    Jack Dinkel

    This book is utterly useless you read chapters entirely. If I read a chapter from start to finish, absorbing every word, I could understand the material well enough, but it got so caught up in jargon and what-ifs that it was incomprehensible as a quick lookup guide. As a computer scientist, a book you can quickly look things up in is essential and this book does not do that.

  9. 5 out of 5

    Abhinav

    Read this book and took the class(15213). The book explains the concepts of computer systems with amazing clarity. It is the textbook that I always keep coming back to whenever I have any doubts. This book teaches you, throughout all of its chapters in great details what happens when you "run" a program on your computer. Greatly enhanced my knowledge of CS.

  10. 5 out of 5

    Sarah

    Partially read for CSCI 2400: Computer Systems at CU Boulder. I actually found this a very approachable textbook on this subject, and following along with the examples and exercises in the text was quite helpful in gaining a working understanding of the material for lab exercises and exams.

  11. 5 out of 5

    Kiran Gangadharan

    A good introduction to Computer Science and Systems in comprehensible chunks.

  12. 4 out of 5

    Fatima

    Easy to follow, only read 5 or 6 chapters as part of the class CS110 at Stanford.

  13. 4 out of 5

    Dmytro Chaban

    Must have book for those who want not just know how to build yet another application, but for those who want to know how this yet another application working under the C language shell. And under I mean from C language to the most lower level of hardware as an ALU and other things. This book can skill you up really high.

  14. 4 out of 5

    Musa Jamshed

    Had to read this for a systems class... being a good enough student to actually read and consume the textbook material is somewhat new to me, but this book made it easy. The descriptions are easy to understand, have the right amount of specificity, and only use examples/diagrams when necessary. Literally the best textbook I've ever had.

  15. 5 out of 5

    Swastik Agarwal

    Worth the price (and your time!) for the chapter on memory hierarchy alone. There's very good depth for each topic covered, the language is easy to understand, and the homework assignments are very well thought out too. Absolutely fantastic book. Highly recommended, especially if you're a self-taught engineer.

  16. 5 out of 5

    Leal Luo

    Awesome book, it helps me construct the idea about computer step by step. I didn't finish all the books because my limited ability. I will read it from time to time, when i feel my level and understanding increase. I was fascinated by the beauty of the computer and its philosophy.

  17. 4 out of 5

    Em | missprincessqueen

    Textbook for Computer Architecture course. Full of jargon.

  18. 5 out of 5

    Lucas

    Very dense book with a lot of great information but can be incomprehensible at times. I would not recommend his for an introduction to the topic and am a bit stymied why it often is. Upon reviewing the text it makes sense once I understand the material but I must paradoxically understand the material first. Perhaps a bit more fitting for a refresher.

  19. 5 out of 5

    Wangshan Lu

    One of the best computer science/engineering books ever, arguably the best textbook in this domain. The writing is clear, precise, and it does an excellent job in explaining complex ideas in a simple and understandable way.

  20. 5 out of 5

    Maqbool

    Reading and than solving assignment which are provided by the author on student website is great way to enhance the understanding of the material. it cover wide range of topics such as network programming, concurrent programming, assembly etc...

  21. 5 out of 5

    Antidb

    A huge book, hard to read from start to the end, choose your perspectives.

  22. 4 out of 5

    Landey Gu

    Some chapters really needs more elaboration. Overall, provides a decent material which illustrated the architecture of the computer system.

  23. 4 out of 5

    John Davis

    Quite instructive; good intro to assembly, C network programming, and other systems topics at the undergrad level.

  24. 5 out of 5

    za

    Buku acuan kala kuliah Sistem Komputer. Terlalu bagus untuk dijadikan acuan kuliah di Indonesia. Hihihi....

  25. 5 out of 5

    Emilie

    As written for and used in 15-213: Introduction to Computer Systems at CMU. This is a really excellent textbook for beginning low level programming.

  26. 4 out of 5

    Arvydas Sidorenko

    The content of this book is a must-know for every software developer without exception. It is rather long, but I found it easy to read.

  27. 4 out of 5

    Arnoud Visser

    Checking the differences with first edition. First impression is that they reduced the number of subjects (although the number of pages increased).

  28. 5 out of 5

    Carlo

    Another essential book for the programmer's shelf, this one is a thorough introduction to how computers work under the hood. Do the exercises!

  29. 5 out of 5

    Wudongnoodles

    Good. Very easy to read. Clearly written.

  30. 5 out of 5

    Ak Muhammad

Add a review

Your email address will not be published. Required fields are marked *

Loading...
We use cookies to give you the best online experience. By using our website you agree to our use of cookies in accordance with our cookie policy.