Intro to C on Windows - Day 3
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
z Toggle filter mode V Revert filter to original state

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
1:16Today: Memory
1:16Today: Memory
1:16Today: Memory
2:38Programming = Modifying Memory
2:38Programming = Modifying Memory
2:38Programming = Modifying Memory
4:55Recap of our program
4:55Recap of our program
4:55Recap of our program
5:45Brief note on the compiler warnings
5:45Brief note on the compiler warnings
5:45Brief note on the compiler warnings
6:35Okay: Where are the bits?
6:35Okay: Where are the bits?
6:35Okay: Where are the bits?
8:05Pointers. C lets you talk about memory.
8:05Pointers. C lets you talk about memory.
8:05Pointers. C lets you talk about memory.
9:55The syntax of Pointers: * and &
9:55The syntax of Pointers: * and &
9:55The syntax of Pointers: * and &
12:01Memory addresses, Virtual Memory
12:01Memory addresses, Virtual Memory
12:01Memory addresses, Virtual Memory
15:11How Virtual Memory Works
15:11How Virtual Memory Works
15:11How Virtual Memory Works
17:39The consequences of Virtual Memory
17:39The consequences of Virtual Memory
17:39The consequences of Virtual Memory
18:40Looking at pointers in the watch window
18:40Looking at pointers in the watch window
18:40Looking at pointers in the watch window
21:04The memory window
21:04The memory window
21:04The memory window
22:13Changing memory manually via the debugger
22:13Changing memory manually via the debugger
22:13Changing memory manually via the debugger
23:34C: the power of no protection
23:34C: the power of no protection
23:34C: the power of no protection
24:23A caveat: can't touch memory you don't own yet
24:23A caveat: can't touch memory you don't own yet
24:23A caveat: can't touch memory you don't own yet
25:27Getting close to the metal is awesome
25:27Getting close to the metal is awesome
25:27Getting close to the metal is awesome
26:16Where did this initial memory come from?
26:16Where did this initial memory come from?
26:16Where did this initial memory come from?
26:55The Stack
26:55The Stack
26:55The Stack
28:11Why the stack makes sense (calls and returns)
28:11Why the stack makes sense (calls and returns)
28:11Why the stack makes sense (calls and returns)
31:11Let's watch the stack go
31:11Let's watch the stack go
31:11Let's watch the stack go
33:32Debug mode memory cruft
33:32Debug mode memory cruft
33:32Debug mode memory cruft
36:17Memory moving around (Stack randomization / ASLR)
36:17Memory moving around (Stack randomization / ASLR)
36:17Memory moving around (Stack randomization / ASLR)
38:19Everything we'll do is about touching memory
38:19Everything we'll do is about touching memory
38:19Everything we'll do is about touching memory
38:38Memory control = super powers
38:38Memory control = super powers
38:38Memory control = super powers
39:04Where code is in memory [n.b. watch the q&a to see this work]
39:04Where code is in memory [n.b. watch the q&a to see this work]
39:04Where code is in memory [n.b. watch the q&a to see this work]
41:57Pictures!
41:57Pictures!
41:57Pictures!
42:47Making the trailer
42:47Making the trailer
42:47Making the trailer
43:45Centimeters matter to CPUs (thanks, speed of light!)
43:45Centimeters matter to CPUs (thanks, speed of light!)
43:45Centimeters matter to CPUs (thanks, speed of light!)
50:35Why it's important to know that
50:35Why it's important to know that
50:35Why it's important to know that
51:36Applying the same idea to PCIe
51:36Applying the same idea to PCIe
51:36Applying the same idea to PCIe
52:40Latency vs. Throughput/Bandwidth
52:40Latency vs. Throughput/Bandwidth
52:40Latency vs. Throughput/Bandwidth
56:09The Cache
56:09The Cache
56:09The Cache
1:00:51The cache miss, and the horror of... the swap!
1:00:51The cache miss, and the horror of... the swap!
1:00:51The cache miss, and the horror of... the swap!
1:03:07One more time, today's moral: everything we do is poking memory
1:03:07One more time, today's moral: everything we do is poking memory
1:03:07One more time, today's moral: everything we do is poking memory