Computers and the Internet are an undeniable and inextricable part of our daily lives. This book is for those who wish to better understand how this came to be. It explores the technological bases of computers, networks, software and data management, leading to the development of four ?pillars? on which the essential applications that have a strong impact on individuals and society are based: embedded systems, Artificial Intelligence, the Internet, image processing and vision. We will travel to the heart of major application areas: robotics, virtual reality, health, mobility, energy, the…mehr
Computers and the Internet are an undeniable and inextricable part of our daily lives. This book is for those who wish to better understand how this came to be. It explores the technological bases of computers, networks, software and data management, leading to the development of four ?pillars? on which the essential applications that have a strong impact on individuals and society are based: embedded systems, Artificial Intelligence, the Internet, image processing and vision.
We will travel to the heart of major application areas: robotics, virtual reality, health, mobility, energy, the factory of the future, not forgetting the major questions that this ?digitization? can raise. This book is the author?s testimony after fifty years spent in environments that are very open to new technologies. It offers perspectives on the evolution of the digital world that we live in.Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Jean-Loïc Delhaye has a PhD in Artificial Intelligence. He directed the Centre National Universitaire Sud de Calcul, France, before piloting partnerships and the valorization of research at the Centre Inria Rennes?Bretagne Altlantique, France. He has also been very active in national and European collaborations on high performance computing.
Inhaltsangabe
Foreword xi Jean-Pierre BANÂTRE
Preface xv
Acknowledgments xxi
Chapter 1. From the Calculator to the Supercomputer 1
1.1. Introduction 1
1.2. Some important concepts 1
1.2.1. Information and data 1
1.2.2. Binary system 3
1.2.3. Coding 3
1.2.4. Algorithm 5
1.2.5. Program 7
1.3. Towards automation of calculations 7
1.3.1. Slide rule 7
1.3.2. The Pascaline 8
1.3.3. The Jacquard loom 9
1.3.4. Babbage's machine 9
1.3.5. The first desktop calculators 10
1.3.6. Hollerith's machine 11
1.4. The first programmable computers 12
1.4.1. Konrad Zuse's machines 12
1.4.2. Colossus 13
1.4.3. ENIAC 13
1.5. Generations of computers 14
1.5.1. First generation: the transition to electronics 15
1.5.2. Second generation: the era of the transistor 17
1.5.3. Third generation: the era of integrated circuits 20
1.5.4. Fourth generation: the era of microprocessors 24
1.6. Supercomputers 28
1.6.1. Some fields of use 28
1.6.2. History of supercomputers 29
1.6.3. Towards exaflops 33
1.7. What about the future? 35
1.7.1. An energy and ecological challenge 35
1.7.2. Revolutions in sight? 36
Chapter 2. Computer Networks and Their Applications 37
2.1. Introduction 37
2.2. A long history 38
2.3. Computer network infrastructure 42
2.3.1. Geographic coverage: from PAN to WAN 43
2.3.2. Communication media 44
2.3.3. Interconnection equipment and topologies 48
2.3.4. Two other characteristics of computer networks 52
2.3.5. Quality of service 54
2.4. Communication protocols and the Internet 55
2.4.1. The first protocols 55
2.4.2. The OSI model 56
2.4.3. The history of the Internet 57
2.4.4. The TCP/IP protocol 58
2.4.5. IP addressing 59
2.4.6. Management and use of the Internet 60
2.4.7. Evolving technologies 61
2.4.8. What future? 62
2.5. Applications 63
2.5.1. The World Wide Web 64
2.5.2. Cloud computing 67
2.5.3. The Internet of Things 68
2.5.4. Ubiquitous computing and spontaneous networks 72
2.6. Networks and security 74
2.6.1. Vulnerabilities 74
2.6.2. The protection of a network 76
2.6.3. Message encryption 76
2.6.4. Checking its security 77
Chapter 3. Software 79
3.1. Introduction 79
3.2. From algorithm to computer program 80
3.2.1. Programs and subprograms 82
3.2.2. Programming languages 83
3.3. Basic languages and operating systems 85
3.3.1. Basic languages 85
3.3.2. Operating system functions 86
3.3.3. A bit of history 88
3.3.4. Universal operating systems 91
3.3.5. Targeted operating systems 93
3.4. "High-level" programming and applications 96
3.4.1. Imperative languages 96
3.4.2. Functional languages 98
3.4.3. Object programming 99
3.4.4. Other programming languages 100
3.4.5. The most used languages 101
3.5. Software development 102
3.5.1. Software categories 102
3.5.2. Software quality 103
3.5.3. Development methods 104
3.5.4. Software engineering 107
3.6. Software verification and validation 107
3.6.1. Errors with sometimes tragic consequences 107