[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:15.35,0:00:17.21,Default,,0000,0000,0000,,Do you remember when you first realized Dialogue: 0,0:00:17.24,0:00:18.64,Default,,0000,0000,0000,,that your computer was more Dialogue: 0,0:00:18.66,0:00:20.72,Default,,0000,0000,0000,,than just a monitor and keyboard? Dialogue: 0,0:00:20.74,0:00:23.30,Default,,0000,0000,0000,,That between the mouse click\Nand the video playing, Dialogue: 0,0:00:23.32,0:00:25.66,Default,,0000,0000,0000,,there was something\Nthat captured your intention, Dialogue: 0,0:00:25.68,0:00:26.40,Default,,0000,0000,0000,,understood it, Dialogue: 0,0:00:26.43,0:00:27.88,Default,,0000,0000,0000,,and made it real? Dialogue: 0,0:00:28.65,0:00:30.25,Default,,0000,0000,0000,,What is that something? Dialogue: 0,0:00:30.27,0:00:31.98,Default,,0000,0000,0000,,Is it gremlins? Dialogue: 0,0:00:32.01,0:00:33.77,Default,,0000,0000,0000,,Let's imagine that we can shrink down Dialogue: 0,0:00:33.79,0:00:35.12,Default,,0000,0000,0000,,to the size of an electron Dialogue: 0,0:00:35.14,0:00:37.87,Default,,0000,0000,0000,,and inject ourselves\Ninto a click of a mouse. Dialogue: 0,0:00:37.89,0:00:39.51,Default,,0000,0000,0000,,If you took your mouse apart, Dialogue: 0,0:00:39.53,0:00:42.17,Default,,0000,0000,0000,,you'd see that it's really\Na very simple machine. Dialogue: 0,0:00:42.19,0:00:43.42,Default,,0000,0000,0000,,It has a couple buttons Dialogue: 0,0:00:43.44,0:00:46.72,Default,,0000,0000,0000,,and a system for detecting\Nmotion and distance. Dialogue: 0,0:00:46.75,0:00:48.22,Default,,0000,0000,0000,,You might have an optical mouse Dialogue: 0,0:00:48.25,0:00:50.84,Default,,0000,0000,0000,,that makes these measurements\Nwith lights and sensors, Dialogue: 0,0:00:50.87,0:00:53.11,Default,,0000,0000,0000,,but older ones did this\Nwith a hard rubber ball Dialogue: 0,0:00:53.13,0:00:54.55,Default,,0000,0000,0000,,and some plastic wheels. Dialogue: 0,0:00:54.58,0:00:56.30,Default,,0000,0000,0000,,Same concept. Dialogue: 0,0:00:56.32,0:00:57.89,Default,,0000,0000,0000,,When you click the button on your mouse, Dialogue: 0,0:00:57.91,0:00:59.69,Default,,0000,0000,0000,,it sends a message to the computer Dialogue: 0,0:00:59.72,0:01:01.80,Default,,0000,0000,0000,,with information about its position. Dialogue: 0,0:01:01.82,0:01:03.47,Default,,0000,0000,0000,,When your mouse click is received, Dialogue: 0,0:01:03.49,0:01:06.86,Default,,0000,0000,0000,,it's handled by the basic\Ninput/output subsystem. Dialogue: 0,0:01:06.88,0:01:09.42,Default,,0000,0000,0000,,This subsystem acts like the eyes and ears Dialogue: 0,0:01:09.44,0:01:12.03,Default,,0000,0000,0000,,and mouth and hands of the computer. Dialogue: 0,0:01:12.05,0:01:14.20,Default,,0000,0000,0000,,Basically, it provides\Na way for the computer Dialogue: 0,0:01:14.22,0:01:16.42,Default,,0000,0000,0000,,to interact with its environment. Dialogue: 0,0:01:16.44,0:01:18.07,Default,,0000,0000,0000,,But it also acts like a buffer Dialogue: 0,0:01:18.09,0:01:21.48,Default,,0000,0000,0000,,to keep the CPU from being\Noverwhelmed by distractions. Dialogue: 0,0:01:21.50,0:01:23.79,Default,,0000,0000,0000,,In this case, the I/O subsystem decides Dialogue: 0,0:01:23.81,0:01:25.92,Default,,0000,0000,0000,,that your mouse click is pretty important Dialogue: 0,0:01:25.94,0:01:28.92,Default,,0000,0000,0000,,so it generates an interrupt to the CPU. Dialogue: 0,0:01:28.94,0:01:31.08,Default,,0000,0000,0000,,"Hey, CPU! Got a click here." Dialogue: 0,0:01:31.95,0:01:34.30,Default,,0000,0000,0000,,The CPU, or central processing unit, Dialogue: 0,0:01:34.33,0:01:36.50,Default,,0000,0000,0000,,is the brains of the whole computer. Dialogue: 0,0:01:36.52,0:01:39.05,Default,,0000,0000,0000,,Just like your brain doesn't\Ntake up your whole body, Dialogue: 0,0:01:39.07,0:01:41.55,Default,,0000,0000,0000,,the CPU doesn't take\Nup the whole computer, Dialogue: 0,0:01:41.58,0:01:44.24,Default,,0000,0000,0000,,but it runs the show all the same. Dialogue: 0,0:01:44.26,0:01:46.48,Default,,0000,0000,0000,,And the CPU's job, its whole job, Dialogue: 0,0:01:46.51,0:01:48.42,Default,,0000,0000,0000,,is fetching instructions from memory Dialogue: 0,0:01:48.44,0:01:50.43,Default,,0000,0000,0000,,and executing them. Dialogue: 0,0:01:50.45,0:01:52.36,Default,,0000,0000,0000,,So, while you're typing, typing, typing, Dialogue: 0,0:01:52.38,0:01:53.59,Default,,0000,0000,0000,,maybe really fast, Dialogue: 0,0:01:53.61,0:01:55.06,Default,,0000,0000,0000,,like 60 words a minute, Dialogue: 0,0:01:55.09,0:01:57.07,Default,,0000,0000,0000,,the CPU is fetching and executing Dialogue: 0,0:01:57.09,0:01:59.11,Default,,0000,0000,0000,,billions of instructions a second. Dialogue: 0,0:01:59.14,0:02:02.15,Default,,0000,0000,0000,,Yes, billions every second: Dialogue: 0,0:02:02.18,0:02:04.96,Default,,0000,0000,0000,,instructions to move your mouse\Naround on the screen, Dialogue: 0,0:02:04.98,0:02:07.12,Default,,0000,0000,0000,,to run that clock widget on your desktop, Dialogue: 0,0:02:07.14,0:02:08.87,Default,,0000,0000,0000,,play your internet radio, Dialogue: 0,0:02:08.89,0:02:11.27,Default,,0000,0000,0000,,manage the files you're\Nediting on the hard drive, Dialogue: 0,0:02:11.30,0:02:12.88,Default,,0000,0000,0000,,and much, much more. Dialogue: 0,0:02:12.90,0:02:16.16,Default,,0000,0000,0000,,Your computer's CPU\Nis one heck of a multitasker! Dialogue: 0,0:02:16.44,0:02:17.59,Default,,0000,0000,0000,,"But oh my gosh Dialogue: 0,0:02:17.61,0:02:18.88,Default,,0000,0000,0000,,there's a very important mouse click Dialogue: 0,0:02:18.91,0:02:20.01,Default,,0000,0000,0000,,coming through now! Dialogue: 0,0:02:20.03,0:02:22.56,Default,,0000,0000,0000,,Let's drop everything now\Nand deal with that!" Dialogue: 0,0:02:23.21,0:02:24.78,Default,,0000,0000,0000,,There are programs for everything Dialogue: 0,0:02:24.80,0:02:26.31,Default,,0000,0000,0000,,that the CPU does. Dialogue: 0,0:02:26.34,0:02:28.03,Default,,0000,0000,0000,,A special program for the mouse, Dialogue: 0,0:02:28.06,0:02:29.07,Default,,0000,0000,0000,,for the clock widget, Dialogue: 0,0:02:29.09,0:02:30.28,Default,,0000,0000,0000,,for the internet radio, Dialogue: 0,0:02:30.30,0:02:33.11,Default,,0000,0000,0000,,and for dealing with letters\Nsent by the keyboard. Dialogue: 0,0:02:33.14,0:02:35.66,Default,,0000,0000,0000,,Each program was initially\Nwritten by a human Dialogue: 0,0:02:35.69,0:02:37.88,Default,,0000,0000,0000,,in a human-readable programming language, Dialogue: 0,0:02:37.91,0:02:38.74,Default,,0000,0000,0000,,like Java, Dialogue: 0,0:02:38.76,0:02:39.77,Default,,0000,0000,0000,,C++, Dialogue: 0,0:02:39.80,0:02:41.20,Default,,0000,0000,0000,,or Python. Dialogue: 0,0:02:41.22,0:02:43.72,Default,,0000,0000,0000,,But human programs take up a lot of space Dialogue: 0,0:02:43.74,0:02:47.43,Default,,0000,0000,0000,,and contain a lot of unnecessary\Ninformation to a computer, Dialogue: 0,0:02:47.45,0:02:49.21,Default,,0000,0000,0000,,so they are compiled and made smaller Dialogue: 0,0:02:49.24,0:02:52.63,Default,,0000,0000,0000,,and stored in bits of ones\Nand zeros in memory. Dialogue: 0,0:02:52.65,0:02:55.39,Default,,0000,0000,0000,,The CPU realizes that it\Nneeds instructions Dialogue: 0,0:02:55.41,0:02:57.39,Default,,0000,0000,0000,,for how to deal with this mouse click, Dialogue: 0,0:02:57.41,0:02:59.70,Default,,0000,0000,0000,,so it looks up the address\Nfor the mouse program Dialogue: 0,0:02:59.72,0:03:02.07,Default,,0000,0000,0000,,and sends a request\Nto the memory subsystem Dialogue: 0,0:03:02.10,0:03:04.18,Default,,0000,0000,0000,,for instructions stored there. Dialogue: 0,0:03:05.29,0:03:07.34,Default,,0000,0000,0000,,Each instruction\Nin the mouse device driver Dialogue: 0,0:03:07.36,0:03:09.72,Default,,0000,0000,0000,,is duly fetched and executed. Dialogue: 0,0:03:09.74,0:03:12.09,Default,,0000,0000,0000,,And that's not nearly\Nthe end of the story! Dialogue: 0,0:03:12.11,0:03:14.63,Default,,0000,0000,0000,,Because the CPU learns\Nthat the mouse was clicked Dialogue: 0,0:03:14.65,0:03:16.27,Default,,0000,0000,0000,,when the cursor was over a picture Dialogue: 0,0:03:16.30,0:03:18.15,Default,,0000,0000,0000,,of a button on the monitor screen, Dialogue: 0,0:03:18.18,0:03:21.22,Default,,0000,0000,0000,,and so, the CPU asks memory\Nfor the monitor program Dialogue: 0,0:03:21.25,0:03:23.33,Default,,0000,0000,0000,,to find out what that button is. Dialogue: 0,0:03:23.35,0:03:25.58,Default,,0000,0000,0000,,And then the CPU has to ask memory Dialogue: 0,0:03:25.60,0:03:27.41,Default,,0000,0000,0000,,for the program for the button, Dialogue: 0,0:03:27.44,0:03:28.92,Default,,0000,0000,0000,,which means that the CPU needs Dialogue: 0,0:03:28.95,0:03:30.66,Default,,0000,0000,0000,,the monitor program again Dialogue: 0,0:03:30.69,0:03:32.84,Default,,0000,0000,0000,,to show the video\Nassociated with the button, Dialogue: 0,0:03:32.86,0:03:34.72,Default,,0000,0000,0000,,and so it goes. Dialogue: 0,0:03:34.74,0:03:37.46,Default,,0000,0000,0000,,And let's just say there\Nare a lot of programs involved Dialogue: 0,0:03:37.49,0:03:39.58,Default,,0000,0000,0000,,before you even see\Nthe button on the screen Dialogue: 0,0:03:39.61,0:03:41.36,Default,,0000,0000,0000,,light up when you clicked it. Dialogue: 0,0:03:41.38,0:03:43.82,Default,,0000,0000,0000,,So, just the simple task\Nof clicking your mouse Dialogue: 0,0:03:43.85,0:03:46.19,Default,,0000,0000,0000,,means visiting\Nall of the critical components Dialogue: 0,0:03:46.22,0:03:48.17,Default,,0000,0000,0000,,of your computer's architecture: Dialogue: 0,0:03:48.20,0:03:49.21,Default,,0000,0000,0000,,peripherals, Dialogue: 0,0:03:49.24,0:03:51.02,Default,,0000,0000,0000,,the basic input-output system, Dialogue: 0,0:03:51.05,0:03:52.36,Default,,0000,0000,0000,,the CPU, Dialogue: 0,0:03:52.38,0:03:53.13,Default,,0000,0000,0000,,programs, Dialogue: 0,0:03:53.15,0:03:54.12,Default,,0000,0000,0000,,and memory, Dialogue: 0,0:03:54.14,0:03:56.13,Default,,0000,0000,0000,,and not one gremlin.