57: Computational Skeuomorphism
00:00:00
◼
►
[Music]
[TS]
00:00:02
◼
►
this is hypercritical weekly talkshow
[TS]
00:00:05
◼
►
ruminating on exactly what is wrong in
[TS]
00:00:07
◼
►
the world of Apple and related
[TS]
00:00:08
◼
►
technologies and businesses
[TS]
00:00:09
◼
►
nothing is so perfect that it can't be
[TS]
00:00:12
◼
►
complained about by my co-host John
[TS]
00:00:14
◼
►
siracusa i'm dan benjamin this is
[TS]
00:00:16
◼
►
episode number 57 today's Friday March
[TS]
00:00:19
◼
►
2nd want to make sure that we thank our
[TS]
00:00:21
◼
►
two sponsors right at the top of the
[TS]
00:00:23
◼
►
show tiny letter comm send email
[TS]
00:00:26
◼
►
newsletters the easiest most simple way
[TS]
00:00:29
◼
►
possible and Shopify create your own
[TS]
00:00:32
◼
►
online store today we also want to
[TS]
00:00:35
◼
►
mention the bandwidth for this episode
[TS]
00:00:36
◼
►
is provided by Mac Mini Kolo I host
[TS]
00:00:39
◼
►
Ansel the servers there to help run 5x5
[TS]
00:00:41
◼
►
and you can - Mac Mini Colo net / 5x5 as
[TS]
00:00:45
◼
►
a special discount for this is why we
[TS]
00:00:48
◼
►
need faster file systems I'm learning
[TS]
00:00:50
◼
►
how to use computers today John how are
[TS]
00:00:52
◼
►
you I can relaunch my apps a little bit
[TS]
00:00:55
◼
►
faster you have all SSD you've got
[TS]
00:00:57
◼
►
mirrored and striped SSD drives in all
[TS]
00:00:59
◼
►
of your chips Dave nanion the guy who
[TS]
00:01:02
◼
►
makes SuperDuper I doesn't trust the SSD
[TS]
00:01:05
◼
►
drives typically he doesn't trust Lee
[TS]
00:01:08
◼
►
you know supposed to trust any drive Oh
[TS]
00:01:10
◼
►
point is I'm gonna have but he trusts
[TS]
00:01:12
◼
►
those less than he distraught he he
[TS]
00:01:14
◼
►
distrusts them even more than he
[TS]
00:01:16
◼
►
distrust his other what about the people
[TS]
00:01:17
◼
►
of emailed asking you what about SSD is
[TS]
00:01:20
◼
►
John yeah I probably distrust me too
[TS]
00:01:22
◼
►
well today's show will be a follow up
[TS]
00:01:24
◼
►
show on file systems so we will talk
[TS]
00:01:28
◼
►
about all these issues we don't have any
[TS]
00:01:29
◼
►
other thing to talk about today no no
[TS]
00:01:32
◼
►
iPad 3 comments or predictions maybe
[TS]
00:01:35
◼
►
we'll throw that in at the end ok
[TS]
00:01:38
◼
►
alright really going here now that my
[TS]
00:01:40
◼
►
audio is actually working I would like
[TS]
00:01:41
◼
►
to blame this audio stuff online but
[TS]
00:01:43
◼
►
this happened in Snow Leopard too like
[TS]
00:01:45
◼
►
you know everything's all set up and the
[TS]
00:01:46
◼
►
last thing I do is you know your testing
[TS]
00:01:48
◼
►
1 2 or 3 into my mic and noting the
[TS]
00:01:51
◼
►
meters don't move at all I'm plugged mic
[TS]
00:01:54
◼
►
plugged back in nothing so the old
[TS]
00:01:57
◼
►
reboot this is the only time I ever
[TS]
00:01:58
◼
►
reboot my Mac you know is when the audio
[TS]
00:02:00
◼
►
stops working and yeah before you
[TS]
00:02:01
◼
►
started doing the show you had an uptime
[TS]
00:02:03
◼
►
of like three years and soon as you have
[TS]
00:02:05
◼
►
this show you're lucky to get the full
[TS]
00:02:06
◼
►
seven days well now as soon as I had my
[TS]
00:02:09
◼
►
uptime was the space between security
[TS]
00:02:10
◼
►
updates to Mac OS 10 the ones that made
[TS]
00:02:12
◼
►
you restart
[TS]
00:02:14
◼
►
alright let's go do it follow up I was
[TS]
00:02:19
◼
►
listening to myself in hypercritical
[TS]
00:02:21
◼
►
episode 56 and in the car this week as I
[TS]
00:02:25
◼
►
always do and was cringing as I heard
[TS]
00:02:27
◼
►
myself repeatedly used the word defer
[TS]
00:02:29
◼
►
about deferring the costs and I wasn't I
[TS]
00:02:33
◼
►
didn't mean deferring the costs as in
[TS]
00:02:35
◼
►
pushing them off in time this was in
[TS]
00:02:38
◼
►
connection to Apple's data centers and
[TS]
00:02:41
◼
►
the cost of running them the cost of
[TS]
00:02:43
◼
►
running iCloud and the developers using
[TS]
00:02:45
◼
►
iCloud Hippias and no sooner had I
[TS]
00:02:49
◼
►
gotten out of the car and logged onto
[TS]
00:02:51
◼
►
the computer that I got a tweet from
[TS]
00:02:54
◼
►
someone Nathan heretic I hope I got that
[TS]
00:02:58
◼
►
right telling me that I should not be
[TS]
00:02:59
◼
►
saying the word defer and I said I know
[TS]
00:03:01
◼
►
I just heard myself saying in the car
[TS]
00:03:02
◼
►
was horrible I should have said either
[TS]
00:03:04
◼
►
offset or defray defray is probably the
[TS]
00:03:07
◼
►
word that was getting mapped wrong in my
[TS]
00:03:08
◼
►
brain and the point I made to him on
[TS]
00:03:10
◼
►
Twitter is this interesting that
[TS]
00:03:11
◼
►
listening to myself as soon as I said it
[TS]
00:03:14
◼
►
you can hear all that's wrong with what
[TS]
00:03:15
◼
►
is this guy talking about right but
[TS]
00:03:16
◼
►
saying it I said it like 9 times without
[TS]
00:03:19
◼
►
my brain triggering the warning you were
[TS]
00:03:22
◼
►
using the wrong word
[TS]
00:03:23
◼
►
right so I was kind of like writing and
[TS]
00:03:25
◼
►
proofreading when I'm speaking things
[TS]
00:03:28
◼
►
come out of my mouth that don't match
[TS]
00:03:30
◼
►
what my brain was thinking so I
[TS]
00:03:32
◼
►
apologize for that and thanks for the
[TS]
00:03:33
◼
►
correction Nathan a correction from Mark
[TS]
00:03:38
◼
►
Hofman about notifications in
[TS]
00:03:40
◼
►
Notification Center in Mountain Lion
[TS]
00:03:42
◼
►
we're just asking how that was one of
[TS]
00:03:46
◼
►
the api's that was getting swept up into
[TS]
00:03:48
◼
►
the group of things that are only
[TS]
00:03:51
◼
►
available to Mac developers who put
[TS]
00:03:53
◼
►
their application on the Mac App Store
[TS]
00:03:54
◼
►
and I was saying how that was weird
[TS]
00:03:56
◼
►
because yes notifications can be
[TS]
00:03:59
◼
►
synchronized through the cloud from one
[TS]
00:04:01
◼
►
device to the other and show up on your
[TS]
00:04:02
◼
►
desktop for an event triggered on your
[TS]
00:04:05
◼
►
phone and vice versa but notifications
[TS]
00:04:08
◼
►
also work locally if you just have a
[TS]
00:04:09
◼
►
local Mac application that wants to put
[TS]
00:04:11
◼
►
up a little notification dialog says hey
[TS]
00:04:14
◼
►
something happened over here take a look
[TS]
00:04:15
◼
►
and they want to do something more than
[TS]
00:04:17
◼
►
just have a dock icon badge or bounce or
[TS]
00:04:19
◼
►
something and Notification Center is for
[TS]
00:04:23
◼
►
that as well I said boy it's a shame
[TS]
00:04:24
◼
►
that those guys that you can't
[TS]
00:04:27
◼
►
use notification center for that yeah if
[TS]
00:04:29
◼
►
you're not in the Mac App Store even
[TS]
00:04:31
◼
►
though it has nothing to do with that
[TS]
00:04:32
◼
►
cloud well it turns out that if you do
[TS]
00:04:35
◼
►
only local notifications you can use
[TS]
00:04:37
◼
►
Notification Center in Mountain Lion
[TS]
00:04:39
◼
►
even if you're not on the Mac App Store
[TS]
00:04:40
◼
►
so the only thing that you're barred
[TS]
00:04:42
◼
►
from is so-called push notifications
[TS]
00:04:45
◼
►
notifications that are synchronized
[TS]
00:04:45
◼
►
through Apple's servers so that's good
[TS]
00:04:48
◼
►
to know
[TS]
00:04:52
◼
►
Andrew Lawrence was the first person to
[TS]
00:04:54
◼
►
chime in to tell me that the NetApp
[TS]
00:04:57
◼
►
Oracle lawsuit that I mentioned as a
[TS]
00:04:59
◼
►
possible reason that Apple bailed on ZFS
[TS]
00:05:01
◼
►
was settled shortly after son was
[TS]
00:05:04
◼
►
acquired by Oracle I put a link to the
[TS]
00:05:07
◼
►
press release in the show notes it was
[TS]
00:05:09
◼
►
actually September 2010 that was still
[TS]
00:05:11
◼
►
after long after Apple had decided had
[TS]
00:05:15
◼
►
made his decision on ZFS oh I'm not sure
[TS]
00:05:17
◼
►
settling helped to hurt one with the
[TS]
00:05:19
◼
►
other but by then it was too late but
[TS]
00:05:20
◼
►
it's a good point that it actually has
[TS]
00:05:22
◼
►
been settled and it's not dragging on
[TS]
00:05:23
◼
►
the settlement was one of those ones
[TS]
00:05:24
◼
►
where it's you know dismissed without
[TS]
00:05:27
◼
►
prejudice and the terms of the agreement
[TS]
00:05:29
◼
►
are confidential so we don't know what
[TS]
00:05:30
◼
►
actually happened they just probably
[TS]
00:05:31
◼
►
exchanged a sufficient amount of money
[TS]
00:05:33
◼
►
between parties and everything's all
[TS]
00:05:35
◼
►
better JP I don't know I just have JP
[TS]
00:05:40
◼
►
maybe that's all I could get out of his
[TS]
00:05:41
◼
►
Twitter handle or email or something was
[TS]
00:05:44
◼
►
the first to point out that btrfs is
[TS]
00:05:46
◼
►
pronounced butter FS I had heard that
[TS]
00:05:49
◼
►
enunciation but wasn't aware it was the
[TS]
00:05:50
◼
►
official apparently it is the official
[TS]
00:05:52
◼
►
pronunciation I don't I think I don't
[TS]
00:05:54
◼
►
really like the idea of food mixing with
[TS]
00:05:56
◼
►
my file systems so butter if that sounds
[TS]
00:05:58
◼
►
a little weird to me but if it's butter
[TS]
00:06:00
◼
►
FS then it's butter FS so I will
[TS]
00:06:02
◼
►
endeavour to say butter FS from now on
[TS]
00:06:08
◼
►
JP has some other information he
[TS]
00:06:12
◼
►
apparently this is why he just says JP
[TS]
00:06:14
◼
►
hey he worked in the Genius Bar for a
[TS]
00:06:16
◼
►
while in an Apple Store and here's a
[TS]
00:06:19
◼
►
quoting from his message we got almost
[TS]
00:06:21
◼
►
as many okay hard drives according to
[TS]
00:06:23
◼
►
smart status which were unrepairable in
[TS]
00:06:25
◼
►
Disk Utility as we did actual fail to
[TS]
00:06:27
◼
►
harden so what he's what he's saying is
[TS]
00:06:29
◼
►
that you know people would come in to
[TS]
00:06:30
◼
►
the Genius Bar and they would have a
[TS]
00:06:31
◼
►
problem with their hard drive and half
[TS]
00:06:33
◼
►
the time there was a hardware problem
[TS]
00:06:35
◼
►
with the hard drive but the other half
[TS]
00:06:37
◼
►
of the time it was just hfs+ corruption
[TS]
00:06:40
◼
►
fully 50% of their hard drive related
[TS]
00:06:43
◼
►
problems were not due to hardware but
[TS]
00:06:45
◼
►
were due to HFS corruption and he says
[TS]
00:06:47
◼
►
all in all hard drive issues accounted
[TS]
00:06:49
◼
►
for about 30% of all issues so about 15%
[TS]
00:06:52
◼
►
for a directory failure so he's saying
[TS]
00:06:54
◼
►
15% of all problems that come to the
[TS]
00:06:56
◼
►
Genius Bar and his experience were due
[TS]
00:06:58
◼
►
to hfs+ corruption and across all of
[TS]
00:07:01
◼
►
apples customers this is a pretty big
[TS]
00:07:03
◼
►
number I'm actually surprised that I'm
[TS]
00:07:06
◼
►
surprised that the 30% of all Genius Bar
[TS]
00:07:08
◼
►
t-shirts were hard drives a hard drive
[TS]
00:07:11
◼
►
related but it's really said that half
[TS]
00:07:13
◼
►
of the HOS 15% of all possible Guinness
[TS]
00:07:16
◼
►
bar things are due to HFS+ corruption so
[TS]
00:07:18
◼
►
it shows that this is really is a
[TS]
00:07:19
◼
►
problem an apple I mean apples gotta
[TS]
00:07:20
◼
►
track these stats and has to know geez
[TS]
00:07:22
◼
►
you know 50 percent of the people come
[TS]
00:07:24
◼
►
to the Genius Bar is due to bugs in our
[TS]
00:07:26
◼
►
own software we really need to address
[TS]
00:07:28
◼
►
that filesystem thing a couple people I
[TS]
00:07:32
◼
►
don't remember who sent this might have
[TS]
00:07:34
◼
►
been the chat room but I don't have a
[TS]
00:07:35
◼
►
attribution for it send me a link to an
[TS]
00:07:37
◼
►
lwn net article called a short history
[TS]
00:07:40
◼
►
of butter FS and that I hadn't known too
[TS]
00:07:45
◼
►
much of a butter of has except that it
[TS]
00:07:46
◼
►
was the kind of like a you know the GPL
[TS]
00:07:49
◼
►
Linux directed ZFS like filesystem and I
[TS]
00:07:55
◼
►
also knew that it wasn't quite done yet
[TS]
00:07:56
◼
►
so both of those are true but this this
[TS]
00:07:59
◼
►
article that it linked in the show notes
[TS]
00:08:01
◼
►
is written by someone who worked
[TS]
00:08:03
◼
►
extensively on ZFS and it goes through
[TS]
00:08:05
◼
►
the history of how butter FS came to be
[TS]
00:08:07
◼
►
and what's different about it than ZFS I
[TS]
00:08:12
◼
►
think it's worth I guess all worth
[TS]
00:08:14
◼
►
hitting the highlights of instead of
[TS]
00:08:16
◼
►
just saying go read this article because
[TS]
00:08:17
◼
►
it is a long article and maybe if you're
[TS]
00:08:18
◼
►
not really into this you won't read the
[TS]
00:08:20
◼
►
whole darn thing
[TS]
00:08:22
◼
►
so the be actually the be TR part in
[TS]
00:08:26
◼
►
butter FS stands for be trees it's
[TS]
00:08:29
◼
►
shorter be trees have been so it's
[TS]
00:08:30
◼
►
another victim of the great valve sort
[TS]
00:08:32
◼
►
shortage of 1972 which is stricken the
[TS]
00:08:35
◼
►
UNIX landscape and Keaton used to be a
[TS]
00:08:36
◼
►
problem they didn't even have an e
[TS]
00:08:39
◼
►
leftover for the create system call
[TS]
00:08:41
◼
►
that's how bad it was
[TS]
00:08:42
◼
►
but apparently it's still going on so a
[TS]
00:08:47
◼
►
file systems use b-trees because they're
[TS]
00:08:51
◼
►
an efficient data structure for looking
[TS]
00:08:53
◼
►
stuff up and
[TS]
00:08:54
◼
►
starting stuff and deleting stuff if you
[TS]
00:08:55
◼
►
take any computer science course you'll
[TS]
00:08:57
◼
►
eventually do a chapter on trees and
[TS]
00:08:58
◼
►
they're all different kinds of trees and
[TS]
00:09:00
◼
►
you can see in the diagram of them it's
[TS]
00:09:01
◼
►
like a circle with a bunch of lines
[TS]
00:09:02
◼
►
connecting and there's you know out of
[TS]
00:09:04
◼
►
each little circle there are you know
[TS]
00:09:07
◼
►
one or more lines and then there are
[TS]
00:09:09
◼
►
circles connected those and it just
[TS]
00:09:10
◼
►
makes a big tree structure bee trees are
[TS]
00:09:13
◼
►
a particular kind of tree that you know
[TS]
00:09:16
◼
►
the characteristics of trees are how
[TS]
00:09:17
◼
►
many how many different branches come
[TS]
00:09:19
◼
►
out of each one how do you insert
[TS]
00:09:21
◼
►
something into the tree how do you
[TS]
00:09:22
◼
►
remove something from the tree I'm not
[TS]
00:09:24
◼
►
going to go into the sto details of bee
[TS]
00:09:26
◼
►
trees in particular but suffice it to
[TS]
00:09:28
◼
►
say that B trees are specific variant of
[TS]
00:09:31
◼
►
B trees are among the most efficient
[TS]
00:09:33
◼
►
general-purpose tree structure for the
[TS]
00:09:36
◼
►
you know they do everything pretty well
[TS]
00:09:37
◼
►
you can insert things pretty quickly you
[TS]
00:09:39
◼
►
can delete things pretty quickly they
[TS]
00:09:40
◼
►
don't get unbalanced they don't require
[TS]
00:09:43
◼
►
a lot of maintenance to keep balanced
[TS]
00:09:44
◼
►
ever it's kind of like a good middle
[TS]
00:09:46
◼
►
ground for the types of things that you
[TS]
00:09:47
◼
►
might want to keep track of in a file
[TS]
00:09:50
◼
►
system you do because you don't want to
[TS]
00:09:51
◼
►
be something to be really quick to read
[TS]
00:09:53
◼
►
from but really slow to write because
[TS]
00:09:54
◼
►
file systems tend to do all that stuff
[TS]
00:09:56
◼
►
read write and delete in and generally
[TS]
00:09:58
◼
►
you know equal measures but B trees are
[TS]
00:10:04
◼
►
not particularly good when it comes to
[TS]
00:10:06
◼
►
the strategy the ZFS implements where
[TS]
00:10:08
◼
►
they never overwrite data in place you
[TS]
00:10:11
◼
►
know that's the this is the
[TS]
00:10:12
◼
►
copy-on-write strategy where if you have
[TS]
00:10:14
◼
►
new data to write write in to a new
[TS]
00:10:16
◼
►
location
[TS]
00:10:17
◼
►
rather than writing over on top of the
[TS]
00:10:18
◼
►
open and if you want a mod that's to put
[TS]
00:10:20
◼
►
the copy-on-write means and saying if
[TS]
00:10:21
◼
►
it's time for you to write some data
[TS]
00:10:23
◼
►
instead of overwriting the data find
[TS]
00:10:25
◼
►
where that data is and then make a new
[TS]
00:10:27
◼
►
copy of it somewhere else it's different
[TS]
00:10:29
◼
►
than the old one but B trees are not
[TS]
00:10:32
◼
►
compatible with that at all because if
[TS]
00:10:34
◼
►
you were to naively implement copy and
[TS]
00:10:35
◼
►
write with the B tree then anytime you
[TS]
00:10:37
◼
►
changed anything the entire tree from
[TS]
00:10:39
◼
►
top to bottom would have to be changed
[TS]
00:10:40
◼
►
because the changes would propagate back
[TS]
00:10:43
◼
►
up the tree because you're making a new
[TS]
00:10:44
◼
►
instance so almost all B trees and file
[TS]
00:10:46
◼
►
systems and by the way HFS+ and H of s
[TS]
00:10:49
◼
►
use B trees extensively B trees and file
[TS]
00:10:52
◼
►
systems tend to be updated in place
[TS]
00:10:53
◼
►
because that preserves all the desirable
[TS]
00:10:55
◼
►
performance characteristics of a B tree
[TS]
00:10:57
◼
►
and once you start saying oh we can't
[TS]
00:10:58
◼
►
update anything in place we always had
[TS]
00:10:59
◼
►
to write a new dated a new location and
[TS]
00:11:01
◼
►
B trees seemed useless so many years ago
[TS]
00:11:05
◼
►
someone named Oh had Road
[TS]
00:11:07
◼
►
a I don't know if I got this name right
[TS]
00:11:08
◼
►
OHA D ro deh wrote an academic paper as
[TS]
00:11:12
◼
►
people in academia tend to do about a
[TS]
00:11:15
◼
►
new kind of bee tree that was friendly
[TS]
00:11:18
◼
►
to copy-on-write he found a way that if
[TS]
00:11:20
◼
►
you all you change bee trees in this way
[TS]
00:11:21
◼
►
then we actually can get reasonably good
[TS]
00:11:23
◼
►
performance characteristics while still
[TS]
00:11:25
◼
►
not ever updating data in place and this
[TS]
00:11:29
◼
►
academic paper probably sat around for a
[TS]
00:11:30
◼
►
while until someone named Chris Mason
[TS]
00:11:32
◼
►
found this and said hey if I have a bee
[TS]
00:11:36
◼
►
tree structure that's also friendly -
[TS]
00:11:37
◼
►
copy-on-write maybe I can use that in a
[TS]
00:11:40
◼
►
new file system and his big insight for
[TS]
00:11:44
◼
►
creating a new file system was to decide
[TS]
00:11:47
◼
►
that everything in the file system will
[TS]
00:11:50
◼
►
be stored in one of these copy-on-write
[TS]
00:11:51
◼
►
friendly bee trees normally you have bee
[TS]
00:11:54
◼
►
trees first restoring like oh I'll keep
[TS]
00:11:56
◼
►
track of directory entries with the bee
[TS]
00:11:59
◼
►
tree but when I'll have a separate data
[TS]
00:12:00
◼
►
structure for keeping track of free
[TS]
00:12:02
◼
►
space like a bitmap or something and
[TS]
00:12:03
◼
►
I'll have a separate structure for
[TS]
00:12:04
◼
►
keeping track of extensors you know it
[TS]
00:12:08
◼
►
there are usually different kinds of
[TS]
00:12:09
◼
►
data structures tailored for each
[TS]
00:12:10
◼
►
purpose he decided well this data
[TS]
00:12:12
◼
►
structure looks so great what if
[TS]
00:12:13
◼
►
everything is stored in one of these
[TS]
00:12:15
◼
►
copy IRB trees I'll star the directory
[TS]
00:12:17
◼
►
entries the the free space lists the
[TS]
00:12:19
◼
►
extents that the file data itself
[TS]
00:12:22
◼
►
everything in one of these bee trees and
[TS]
00:12:23
◼
►
that's a nice unifying concept because
[TS]
00:12:27
◼
►
it means that you only really need to
[TS]
00:12:28
◼
►
have one code path once you get your
[TS]
00:12:31
◼
►
code for reading writing and modifying
[TS]
00:12:32
◼
►
these bee trees like down pat and
[TS]
00:12:34
◼
►
debugged you're all set you don't have
[TS]
00:12:36
◼
►
to say okay well what about the code
[TS]
00:12:37
◼
►
that manages the free space and what
[TS]
00:12:38
◼
►
about the code that manages the direct
[TS]
00:12:40
◼
►
Rangers well you not not 17 different
[TS]
00:12:42
◼
►
algorithms and 17 different data
[TS]
00:12:43
◼
►
structure just one thing and you know so
[TS]
00:12:45
◼
►
the code is simpler smaller and a nicely
[TS]
00:12:48
◼
►
uniform and programmers love this type
[TS]
00:12:49
◼
►
of thing so that's the basis of btrfs
[TS]
00:12:53
◼
►
building an entire file system on this
[TS]
00:12:55
◼
►
this new data structure and that's very
[TS]
00:12:59
◼
►
interesting to me I didn't I didn't know
[TS]
00:13:01
◼
►
this before I had read it definitely
[TS]
00:13:02
◼
►
hits all of my buttons of her computer
[TS]
00:13:06
◼
►
science and programmers like oh it's
[TS]
00:13:08
◼
►
beautiful and elegant and has great
[TS]
00:13:09
◼
►
performance characteristics and has all
[TS]
00:13:10
◼
►
these features of ZFS the article goes
[TS]
00:13:12
◼
►
into much more detail about how ZFS and
[TS]
00:13:16
◼
►
are the same and how they differ they
[TS]
00:13:19
◼
►
both kind of arrived similar
[TS]
00:13:20
◼
►
from different directions and they do
[TS]
00:13:23
◼
►
have different advantages and
[TS]
00:13:24
◼
►
disadvantages or asset each other so I
[TS]
00:13:25
◼
►
encourage everyone to actually follow
[TS]
00:13:26
◼
►
that link and read it is not that long
[TS]
00:13:28
◼
►
and it's not too jargon inducing it's a
[TS]
00:13:30
◼
►
short history of BTR oh I almost added a
[TS]
00:13:32
◼
►
butter fs and we will be revisiting this
[TS]
00:13:37
◼
►
topic in a bit once we get through the
[TS]
00:13:39
◼
►
official follow up Lenny P Robert writes
[TS]
00:13:44
◼
►
to tell me that there is a program that
[TS]
00:13:48
◼
►
will look through your HFS+ volume and
[TS]
00:13:54
◼
►
try to detect if there are any errors
[TS]
00:13:57
◼
►
and how does it do this it check sums
[TS]
00:14:01
◼
►
everything and writes a bunch of little
[TS]
00:14:03
◼
►
checksum files to each directory and
[TS]
00:14:05
◼
►
then the next time you ask the check it
[TS]
00:14:07
◼
►
says ok I have this file here this has
[TS]
00:14:09
◼
►
the checksum supposed to be blah
[TS]
00:14:10
◼
►
I will recheck some all these files and
[TS]
00:14:12
◼
►
see if it matches a lot of people were
[TS]
00:14:15
◼
►
asking me hey I'm afraid that my data is
[TS]
00:14:17
◼
►
going bad on my HFS+ volumes how do I
[TS]
00:14:19
◼
►
tell and I did I had wasn't aware of
[TS]
00:14:24
◼
►
this program before but other people
[TS]
00:14:26
◼
►
wrote in with it so I replied so this is
[TS]
00:14:28
◼
►
one of the tools available to you now if
[TS]
00:14:29
◼
►
you think about it for too long you
[TS]
00:14:31
◼
►
realize that this program which is
[TS]
00:14:32
◼
►
called integrity checker by the way it's
[TS]
00:14:36
◼
►
kind of in a catch-22 because it's
[TS]
00:14:41
◼
►
storing the check sums on the same disk
[TS]
00:14:44
◼
►
that you're not trusting to make sure
[TS]
00:14:48
◼
►
your data is ok you know what I mean so
[TS]
00:14:50
◼
►
if you have a bit error and it happens
[TS]
00:14:53
◼
►
to be an error in the checksum file then
[TS]
00:14:57
◼
►
it would look like all your data is
[TS]
00:14:57
◼
►
corrupted and really it's the checksum
[TS]
00:14:59
◼
►
that's corrupted so the very least this
[TS]
00:15:01
◼
►
might tell you something is wrong what
[TS]
00:15:04
◼
►
exactly is wrong what you can do but I
[TS]
00:15:06
◼
►
don't know but you could use this for
[TS]
00:15:08
◼
►
example to keep proving to yourself that
[TS]
00:15:10
◼
►
your backups are the same as they were
[TS]
00:15:12
◼
►
the last time you know like I haven't
[TS]
00:15:15
◼
►
modified anything let me look at my time
[TS]
00:15:16
◼
►
machine back up as of three months ago
[TS]
00:15:18
◼
►
is that data still exactly what it was
[TS]
00:15:20
◼
►
when I wrote it three months ago
[TS]
00:15:22
◼
►
or is there something wrong with it when
[TS]
00:15:24
◼
►
there is something wrong you may not be
[TS]
00:15:25
◼
►
able to tell exactly what's wrong but at
[TS]
00:15:26
◼
►
least you know your data is bad so I
[TS]
00:15:29
◼
►
have a link to this product in the show
[TS]
00:15:30
◼
►
notes I have not tried it myself I don't
[TS]
00:15:32
◼
►
even know how much it costs
[TS]
00:15:34
◼
►
but for people who are paranoid about
[TS]
00:15:36
◼
►
data integrity it's it's seems that
[TS]
00:15:39
◼
►
third parties are taking up the mantle
[TS]
00:15:40
◼
►
of attempting to do something about this
[TS]
00:15:44
◼
►
problem as you might imagine anything
[TS]
00:15:47
◼
►
that's going to grind over your whole
[TS]
00:15:48
◼
►
disk and checksum every single thing and
[TS]
00:15:50
◼
►
check their the check sums are the same
[TS]
00:15:51
◼
►
it's going to be tremendously i/o
[TS]
00:15:53
◼
►
intensive and it probably takes a really
[TS]
00:15:55
◼
►
long time that's what you get when you
[TS]
00:15:58
◼
►
have to do it on top of an existing file
[TS]
00:16:00
◼
►
system instead of having it built in and
[TS]
00:16:05
◼
►
Gregory Williams pointed me to another
[TS]
00:16:08
◼
►
third-party product this one allows you
[TS]
00:16:13
◼
►
to tap into HFS+ native compression that
[TS]
00:16:17
◼
►
was introduced in Snow Leopard I've
[TS]
00:16:18
◼
►
talked about in last show how there was
[TS]
00:16:20
◼
►
no like UI for that in the in the OS and
[TS]
00:16:24
◼
►
Apple decided to compress a whole bunch
[TS]
00:16:26
◼
►
of files sort of out of the box but you
[TS]
00:16:27
◼
►
didn't really have any control over that
[TS]
00:16:29
◼
►
well this is a preference pane called
[TS]
00:16:31
◼
►
clusters from late night software and
[TS]
00:16:35
◼
►
with it you can tell it hey any files
[TS]
00:16:39
◼
►
under a particular folder flip that
[TS]
00:16:41
◼
►
little HFS+ compression bit and compress
[TS]
00:16:42
◼
►
them for you and it's complete
[TS]
00:16:43
◼
►
transparent encryption you don't know
[TS]
00:16:44
◼
►
they're encrypted there's no like
[TS]
00:16:47
◼
►
decryption phase that you can see it all
[TS]
00:16:49
◼
►
happens under the covers in the file
[TS]
00:16:50
◼
►
system so you can save some space with
[TS]
00:16:53
◼
►
this now don't turn this on for a folder
[TS]
00:16:55
◼
►
full of QuickTime movies or something
[TS]
00:16:56
◼
►
because they're already compressed and
[TS]
00:16:58
◼
►
you're not going to get much more out of
[TS]
00:16:59
◼
►
them if you have some easily
[TS]
00:17:00
◼
►
compressible data and you would like to
[TS]
00:17:01
◼
►
have it transparently compressed for you
[TS]
00:17:03
◼
►
this may be the ticket on the other hand
[TS]
00:17:07
◼
►
it's possible that there's a good reason
[TS]
00:17:10
◼
►
that Apple has not exposed the HFS+
[TS]
00:17:13
◼
►
compression in the user interface so I
[TS]
00:17:17
◼
►
think this type of software is the type
[TS]
00:17:19
◼
►
of thing that exists on the borderline
[TS]
00:17:20
◼
►
between what Apple what Apple's
[TS]
00:17:22
◼
►
operating system is capable of and what
[TS]
00:17:24
◼
►
they recommend third-party developers
[TS]
00:17:25
◼
►
use and we will touch on that again
[TS]
00:17:27
◼
►
actually later in the show and I also
[TS]
00:17:32
◼
►
put a link in the show notes to the
[TS]
00:17:34
◼
►
section about hfs+ compression in my
[TS]
00:17:37
◼
►
snow leopard review from 2009 alright so
[TS]
00:17:42
◼
►
that's the end of the official follow-up
[TS]
00:17:43
◼
►
and now we begin the unofficial fall off
[TS]
00:17:46
◼
►
which is the main topic of the show
[TS]
00:17:47
◼
►
which is more
[TS]
00:17:48
◼
►
files isms because believe it or not the
[TS]
00:17:50
◼
►
end of the last show I thought of 20
[TS]
00:17:51
◼
►
things that I didn't talk about related
[TS]
00:17:54
◼
►
to file systems and a lot of people
[TS]
00:17:55
◼
►
asked about them hmm well let's do our
[TS]
00:17:57
◼
►
first sponsor and then we'll kick that
[TS]
00:17:58
◼
►
part off what do you think sounds good
[TS]
00:18:00
◼
►
our first sponsor is a longtime sponsor
[TS]
00:18:02
◼
►
shopify calm love these guys
[TS]
00:18:05
◼
►
very simply I've told you about them
[TS]
00:18:07
◼
►
before create your online store today
[TS]
00:18:09
◼
►
with Shopify they make it super simple
[TS]
00:18:12
◼
►
to make your own store and you can sell
[TS]
00:18:14
◼
►
whatever you want one of the questions
[TS]
00:18:16
◼
►
that I had people were asking me about
[TS]
00:18:17
◼
►
this so well that's perfectly fine if
[TS]
00:18:19
◼
►
you're selling you know physical goods
[TS]
00:18:20
◼
►
if you're selling a t-shirt or you're
[TS]
00:18:22
◼
►
selling electronics or you have a
[TS]
00:18:24
◼
►
Kickstarter project that you know you
[TS]
00:18:26
◼
►
need the storefront for it what if I
[TS]
00:18:28
◼
►
want to sell something electronic what
[TS]
00:18:29
◼
►
if I wrote a book you know and I want to
[TS]
00:18:32
◼
►
sell the PDF of it or what if I have
[TS]
00:18:34
◼
►
something that I want to control down
[TS]
00:18:35
◼
►
yes of course you can do that with
[TS]
00:18:38
◼
►
Shopify dot-com there are tons of
[TS]
00:18:39
◼
►
add-ons and tons of little things that
[TS]
00:18:41
◼
►
that people have written it for exactly
[TS]
00:18:43
◼
►
this kind of thing in fact my friend
[TS]
00:18:46
◼
►
Jeffrey's elderman they have a company
[TS]
00:18:48
◼
►
called a book apart and all of the books
[TS]
00:18:51
◼
►
that they do for designers and
[TS]
00:18:52
◼
►
developers
[TS]
00:18:52
◼
►
that's a Shopify store and they
[TS]
00:18:54
◼
►
customized the heck out of it you
[TS]
00:18:56
◼
►
wouldn't even recognize it
[TS]
00:18:57
◼
►
it's totally so here's the deal normally
[TS]
00:19:00
◼
►
you go in there and you sign up on
[TS]
00:19:02
◼
►
Shopify com you get 30 days free use the
[TS]
00:19:04
◼
►
coupon code 5x5 when you're signing up
[TS]
00:19:07
◼
►
you'll get three months free and of
[TS]
00:19:09
◼
►
course you can use the site and sell
[TS]
00:19:11
◼
►
everything you want within that that
[TS]
00:19:13
◼
►
time frame of course you can so go there
[TS]
00:19:16
◼
►
today Shopify com coupon code 5x5 and
[TS]
00:19:19
◼
►
join more than 20,000 stores selling
[TS]
00:19:22
◼
►
their stuff on Shopify John himself
[TS]
00:19:25
◼
►
you're even opening up a store I am NOT
[TS]
00:19:29
◼
►
gonna be selling USB headsets
[TS]
00:19:35
◼
►
all right already main topic yes the
[TS]
00:19:39
◼
►
main topic is actually inspired by
[TS]
00:19:40
◼
►
follow-up and you mentioned at the very
[TS]
00:19:41
◼
►
top of the show because you've been
[TS]
00:19:43
◼
►
seeing the same emails as I have
[TS]
00:19:44
◼
►
everybody was asking in the last show
[TS]
00:19:46
◼
►
all you know so I listened your show
[TS]
00:19:47
◼
►
about file systems how does all this
[TS]
00:19:50
◼
►
change in light of solid state disks
[TS]
00:19:52
◼
►
that is the question of the week ah and
[TS]
00:19:57
◼
►
I didn't talk about it in last show so
[TS]
00:19:59
◼
►
we'll talk about it now I'll use it as a
[TS]
00:20:00
◼
►
jumping-off point to talk more about
[TS]
00:20:01
◼
►
these file systems in general one of the
[TS]
00:20:05
◼
►
reasons I didn't talk about it is
[TS]
00:20:06
◼
►
because there's no clear answer how does
[TS]
00:20:11
◼
►
it change and it's not even we can't
[TS]
00:20:13
◼
►
even say it changes completely or not at
[TS]
00:20:15
◼
►
all it's somewhere in the middle so I'm
[TS]
00:20:17
◼
►
trying to think of things that file
[TS]
00:20:23
◼
►
systems do that clearly have spinning
[TS]
00:20:28
◼
►
disks in mind as a way to get into the
[TS]
00:20:32
◼
►
topic of how that might change with SSDs
[TS]
00:20:34
◼
►
so the biggest one I could think of them
[TS]
00:20:36
◼
►
are you going to go some more is putting
[TS]
00:20:40
◼
►
related information close together on
[TS]
00:20:42
◼
►
the disk
[TS]
00:20:43
◼
►
because the big thing you want to avoid
[TS]
00:20:44
◼
►
on a spinning disk is moving the disk
[TS]
00:20:47
◼
►
head that is by far the most time
[TS]
00:20:49
◼
►
consuming thing you have to do because
[TS]
00:20:51
◼
►
especially with you know diskette disks
[TS]
00:20:54
◼
►
are getting faster but the speed with
[TS]
00:20:55
◼
►
which you can move a disk head from one
[TS]
00:20:57
◼
►
place to another on a disk has not been
[TS]
00:20:59
◼
►
getting faster nearly as much as the
[TS]
00:21:01
◼
►
size of disks have been increasing you
[TS]
00:21:03
◼
►
know because you have to move the little
[TS]
00:21:05
◼
►
head and then wait for it to stop it
[TS]
00:21:07
◼
►
exactly over some microscopic little
[TS]
00:21:08
◼
►
track on the disk and then wait for it
[TS]
00:21:10
◼
►
to stop wiggling back and forth and sort
[TS]
00:21:12
◼
►
of settle down so we can read again and
[TS]
00:21:14
◼
►
they can do that amazingly fast it's
[TS]
00:21:16
◼
►
like a seek times like nine milliseconds
[TS]
00:21:18
◼
►
or something like that but it's still
[TS]
00:21:21
◼
►
super slow compared to how fast they can
[TS]
00:21:23
◼
►
stream data off a single location on
[TS]
00:21:25
◼
►
disk so putting stuff together on a
[TS]
00:21:28
◼
►
spinning disk is really important you
[TS]
00:21:31
◼
►
can see this yourself I think regular
[TS]
00:21:32
◼
►
users have some idea about this when you
[TS]
00:21:35
◼
►
have a like a 100 megabyte folder and
[TS]
00:21:39
◼
►
but it's filled with thousands and
[TS]
00:21:41
◼
►
thousands of files there are a few bytes
[TS]
00:21:42
◼
►
each how long does it take to duplicate
[TS]
00:21:45
◼
►
that versus how long does it take
[TS]
00:21:47
◼
►
duplicate a single hundred megabyte
[TS]
00:21:48
◼
►
phile if your disc is not full and you
[TS]
00:21:50
◼
►
have lots of free space duplicating a
[TS]
00:21:51
◼
►
single hundred megabyte file can be
[TS]
00:21:53
◼
►
really fast amazingly fast basically if
[TS]
00:21:55
◼
►
the hundred megabyte file is kind of all
[TS]
00:21:57
◼
►
all the data of it is kind of in this
[TS]
00:22:00
◼
►
similar place on the disk you don't need
[TS]
00:22:01
◼
►
to do many seeks you read long sequences
[TS]
00:22:03
◼
►
of bytes off of the disk before you have
[TS]
00:22:05
◼
►
to move the disk head to get the rest of
[TS]
00:22:07
◼
►
the bytes that's really fast but moving
[TS]
00:22:10
◼
►
thousands and thousands of little files
[TS]
00:22:12
◼
►
even the total amount of data is the
[TS]
00:22:14
◼
►
same to get it thousands of thousands
[TS]
00:22:15
◼
►
little files well you have to go read
[TS]
00:22:17
◼
►
the directory entry and that's imagine
[TS]
00:22:18
◼
►
this is hfs+ to go to go to the catalog
[TS]
00:22:20
◼
►
file which is in a central location so
[TS]
00:22:21
◼
►
you read the directory entry and then
[TS]
00:22:22
◼
►
the catalog file points you'd okay
[TS]
00:22:23
◼
►
here's the first file and here's what
[TS]
00:22:25
◼
►
it's called and here's what the bytes
[TS]
00:22:26
◼
►
are so move this can get the bytes for
[TS]
00:22:28
◼
►
that file and that's really quick
[TS]
00:22:29
◼
►
because there's only a few bytes and
[TS]
00:22:30
◼
►
then write the file to the new location
[TS]
00:22:32
◼
►
so make a new directory entry that's
[TS]
00:22:33
◼
►
back to the catalog file and write the
[TS]
00:22:35
◼
►
name of the file there and then write
[TS]
00:22:36
◼
►
the bytes for the file okay let's write
[TS]
00:22:38
◼
►
those flights with a file someplace else
[TS]
00:22:39
◼
►
and dusk you've done like six seeks and
[TS]
00:22:40
◼
►
all you've copied is like two bytes of
[TS]
00:22:42
◼
►
data like if this was a tiny little file
[TS]
00:22:44
◼
►
in fact most your time might have been
[TS]
00:22:47
◼
►
spent just writing the metadata about
[TS]
00:22:49
◼
►
the files name the date you know all
[TS]
00:22:50
◼
►
these other other information but you're
[TS]
00:22:52
◼
►
seeking all over the disk get a little
[TS]
00:22:54
◼
►
bit of data to go back to the catalog
[TS]
00:22:56
◼
►
file write the new location write the
[TS]
00:22:57
◼
►
data it takes forever because seeking
[TS]
00:22:59
◼
►
time starts to dominate how long the
[TS]
00:23:02
◼
►
entire operation takes whereas the
[TS]
00:23:03
◼
►
actual writing data to disk when you
[TS]
00:23:05
◼
►
look at the stats on a disk like into a
[TS]
00:23:06
◼
►
30 megabytes per second or 40 megabytes
[TS]
00:23:08
◼
►
per second yeah that's how much you can
[TS]
00:23:10
◼
►
write if the disk head is pretty much
[TS]
00:23:12
◼
►
not moving and the disk is spinning
[TS]
00:23:13
◼
►
underneath it once you start moving the
[TS]
00:23:15
◼
►
diskette around you're spending all your
[TS]
00:23:17
◼
►
time moving and very little time
[TS]
00:23:18
◼
►
actually writing data so the big thing
[TS]
00:23:21
◼
►
that file systems try to do in in the at
[TS]
00:23:24
◼
►
all times but especially in the modern
[TS]
00:23:26
◼
►
age is no disk seeks put related stuff
[TS]
00:23:28
◼
►
close together pack it all next to each
[TS]
00:23:29
◼
►
other don't make the disk ad move around
[TS]
00:23:32
◼
►
so how does that relate to SSDs the big
[TS]
00:23:37
◼
►
thing with us is these is you know
[TS]
00:23:38
◼
►
there's no moving parts there's no disk
[TS]
00:23:40
◼
►
kid moving back and forth trying to grab
[TS]
00:23:44
◼
►
little pieces just it's just a bunch of
[TS]
00:23:45
◼
►
memory chips and the naive view of
[TS]
00:23:47
◼
►
memory checks is like oh I can get at
[TS]
00:23:48
◼
►
any part of those memory chips instantly
[TS]
00:23:50
◼
►
I don't have to move anything anywhere I
[TS]
00:23:52
◼
►
just say give me byte number 56 and I
[TS]
00:23:54
◼
►
get it give me byte number 3000 and I
[TS]
00:23:56
◼
►
get it and asking for byte 56 directly
[TS]
00:23:58
◼
►
after I asked for but 3000 it doesn't
[TS]
00:24:00
◼
►
make any difference right
[TS]
00:24:01
◼
►
there's no there's nothing to move well
[TS]
00:24:05
◼
►
flash memory unfortunately is not as
[TS]
00:24:07
◼
►
simple as the naive view of memory might
[TS]
00:24:10
◼
►
be there are some limitations and the
[TS]
00:24:14
◼
►
limitations are different for flash
[TS]
00:24:16
◼
►
memory of different kinds a different
[TS]
00:24:17
◼
►
for DRAM differing for all sorts of
[TS]
00:24:19
◼
►
memory chips the stuff that goes on
[TS]
00:24:20
◼
►
inside the memory chips we like to think
[TS]
00:24:21
◼
►
of it as a black box that just stores
[TS]
00:24:23
◼
►
our bits and gives us back but it's
[TS]
00:24:24
◼
►
really fiendishly complex and you don't
[TS]
00:24:26
◼
►
know how for example DRAM works I
[TS]
00:24:28
◼
►
encourage you to go to Wikipedia and
[TS]
00:24:30
◼
►
read about how DRAM works you will
[TS]
00:24:32
◼
►
probably be horrified and amazed at any
[TS]
00:24:34
◼
►
Forks at all pieces it's terrifyingly
[TS]
00:24:35
◼
►
scary flash is similarly terrifying it
[TS]
00:24:39
◼
►
has these crazy limitations that don't
[TS]
00:24:40
◼
►
make any sense until you figure out how
[TS]
00:24:42
◼
►
like the chips are actually laid out and
[TS]
00:24:43
◼
►
how the physics work and the economics
[TS]
00:24:45
◼
►
of fabbing and why they're made this
[TS]
00:24:47
◼
►
play I'll try to give a reasonable
[TS]
00:24:50
◼
►
high-level summary of it but the short
[TS]
00:24:53
◼
►
answer is that it does help to have
[TS]
00:24:57
◼
►
things near each other when when using
[TS]
00:25:01
◼
►
flash memory because although it doesn't
[TS]
00:25:04
◼
►
take any time - there's nothing to seek
[TS]
00:25:06
◼
►
from one location to the other flash
[TS]
00:25:09
◼
►
memory cannot be arbitrarily updated in
[TS]
00:25:12
◼
►
exactly the size pieces that you want
[TS]
00:25:14
◼
►
there are larger chunks that you know
[TS]
00:25:17
◼
►
you can't just say okay I want I'm going
[TS]
00:25:19
◼
►
to write two bytes here I'm going to
[TS]
00:25:20
◼
►
write one byte there and about 1 byte
[TS]
00:25:21
◼
►
over there and everything's hunky-dory
[TS]
00:25:23
◼
►
if the flash chips themselves tend to
[TS]
00:25:26
◼
►
have to do operations in larger evenly
[TS]
00:25:28
◼
►
sized chunks than you would want so that
[TS]
00:25:30
◼
►
might mean erasing an entire block we
[TS]
00:25:33
◼
►
are reading the entire contents of
[TS]
00:25:34
◼
►
entire block erasing the whole thing and
[TS]
00:25:37
◼
►
writing it back plus the change instead
[TS]
00:25:39
◼
►
of just writing your change I tried to
[TS]
00:25:42
◼
►
highlight the one part that's relevant
[TS]
00:25:43
◼
►
most relevant from the Wikipedia page to
[TS]
00:25:46
◼
►
a NAND flash memory that's moved in most
[TS]
00:25:49
◼
►
flash drives and the upshot according to
[TS]
00:25:52
◼
►
Wikipedia and I don't know enough about
[TS]
00:25:54
◼
►
it to know whether this is accurate but
[TS]
00:25:55
◼
►
I assume it probably is because it's
[TS]
00:25:57
◼
►
just a technical matter is that it says
[TS]
00:26:01
◼
►
you can erase memory a block at a time
[TS]
00:26:05
◼
►
but so you can read it in a little
[TS]
00:26:08
◼
►
pieces and you can write it in little
[TS]
00:26:10
◼
►
pieces but you can only erase it a block
[TS]
00:26:11
◼
►
at the time and the next wrinkle to that
[TS]
00:26:13
◼
►
is that
[TS]
00:26:15
◼
►
when you erase you set all the bits but
[TS]
00:26:18
◼
►
when you set them you can only clear
[TS]
00:26:19
◼
►
bits so if you're setting something in a
[TS]
00:26:22
◼
►
region that has all ones in it all you
[TS]
00:26:25
◼
►
got to do is blank out the ones that are
[TS]
00:26:26
◼
►
zeros to make your bit patterns so if
[TS]
00:26:28
◼
►
you're writing one zero one zero and
[TS]
00:26:29
◼
►
you've got one one one one
[TS]
00:26:31
◼
►
you just blank out those two ones and
[TS]
00:26:33
◼
►
voila one zero one zero you just wrote
[TS]
00:26:34
◼
►
only the amount of data you needed ah
[TS]
00:26:38
◼
►
but when you erase it you have to erase
[TS]
00:26:40
◼
►
the entire thing the entire block and a
[TS]
00:26:42
◼
►
block is much bigger than the region
[TS]
00:26:44
◼
►
you're just interested in updating and
[TS]
00:26:45
◼
►
since you can only clear disks if a
[TS]
00:26:48
◼
►
region has more zeros than the data
[TS]
00:26:49
◼
►
you're about to write there like I can't
[TS]
00:26:51
◼
►
I can't write this because I all I can
[TS]
00:26:53
◼
►
do is change things it all I can do is
[TS]
00:26:57
◼
►
change things to zeros but it's already
[TS]
00:26:58
◼
►
got too many zeros I can't change that
[TS]
00:27:00
◼
►
zero to a one
[TS]
00:27:00
◼
►
so if I can't change a zero to one my
[TS]
00:27:03
◼
►
only option is to erase this entire
[TS]
00:27:05
◼
►
block set it all to ones we're going to
[TS]
00:27:07
◼
►
read the block first erase the entire
[TS]
00:27:08
◼
►
block and write the entire block back
[TS]
00:27:10
◼
►
plus my changes there are probably
[TS]
00:27:14
◼
►
better articles about this and someone
[TS]
00:27:16
◼
►
hasn't been the show at Stan and tech I
[TS]
00:27:17
◼
►
was trying to Google for better links to
[TS]
00:27:19
◼
►
this before I started so I will add this
[TS]
00:27:21
◼
►
one they came up in the show notes we
[TS]
00:27:23
◼
►
link to the print only version of it but
[TS]
00:27:25
◼
►
I guess I'll throw them in there so it
[TS]
00:27:29
◼
►
means the ETL details don't matter but
[TS]
00:27:31
◼
►
the point is that operations to flash
[TS]
00:27:34
◼
►
memory don't necessarily only modify the
[TS]
00:27:36
◼
►
bits that you're interested in sometimes
[TS]
00:27:38
◼
►
they have to modify entire large blocks
[TS]
00:27:40
◼
►
of bits even if you're only interested
[TS]
00:27:43
◼
►
in changing a small portion of so that
[TS]
00:27:46
◼
►
argues for trying to make your data
[TS]
00:27:50
◼
►
that's related close to each other
[TS]
00:27:52
◼
►
otherwise you're going to spend your
[TS]
00:27:53
◼
►
time erasing an entire block of data
[TS]
00:27:55
◼
►
just to put one byte there and then
[TS]
00:27:57
◼
►
erase it all totally unrelated block
[TS]
00:27:59
◼
►
about to put to put another byte there
[TS]
00:28:02
◼
►
now I'm not sure if this means that
[TS]
00:28:05
◼
►
putting stuff close together is like a
[TS]
00:28:07
◼
►
big win on flash certainly it's not as
[TS]
00:28:09
◼
►
big a win as it is on spinning disks but
[TS]
00:28:12
◼
►
at the very least it probably does no
[TS]
00:28:14
◼
►
harm and there are reasons to think that
[TS]
00:28:17
◼
►
it might be beneficial like these same
[TS]
00:28:19
◼
►
file system layouts that put things
[TS]
00:28:23
◼
►
close together would also benefit flash
[TS]
00:28:25
◼
►
memory because then
[TS]
00:28:27
◼
►
that's it do operations that modify more
[TS]
00:28:31
◼
►
of the block the whole block rhythm I
[TS]
00:28:33
◼
►
need to erase but the flipside of that
[TS]
00:28:35
◼
►
is if there is a file system that goes
[TS]
00:28:37
◼
►
through great lengths and bends over
[TS]
00:28:38
◼
►
backwards and has a really complicated
[TS]
00:28:40
◼
►
structure completely aimed at minimizing
[TS]
00:28:42
◼
►
seeks it's like all we just got to pack
[TS]
00:28:44
◼
►
everything together and we have to do
[TS]
00:28:45
◼
►
all this complicated stuff and the code
[TS]
00:28:47
◼
►
is complicated and the i/o scheduling is
[TS]
00:28:49
◼
►
complicated also it can avoid seeks it
[TS]
00:28:52
◼
►
could be that that complexity is not
[TS]
00:28:55
◼
►
worth the benefit that you get in SSDs
[TS]
00:28:57
◼
►
and a file system that doesn't go to
[TS]
00:28:58
◼
►
such great lengths to make sure data is
[TS]
00:29:00
◼
►
as close together but is much simpler
[TS]
00:29:03
◼
►
much more reliable and as fewer bugs or
[TS]
00:29:05
◼
►
whatever might be fine on an SSD because
[TS]
00:29:08
◼
►
the things that hurt it on spinning disk
[TS]
00:29:10
◼
►
don't hurt it as much there so that's
[TS]
00:29:13
◼
►
not a very good answer the answer is
[TS]
00:29:14
◼
►
basically it depends and and I don't
[TS]
00:29:17
◼
►
think anyone is really sure and all the
[TS]
00:29:19
◼
►
file systems that I've been talking
[TS]
00:29:21
◼
►
about with the possible section of
[TS]
00:29:23
◼
►
session of butter FS were conceived in a
[TS]
00:29:26
◼
►
time when people didn't realize that
[TS]
00:29:28
◼
►
SSDs would be the phenomenon that they
[TS]
00:29:30
◼
►
are as ZFS is but I think it's close to
[TS]
00:29:34
◼
►
ten years old now it's pretty old and
[TS]
00:29:36
◼
►
back then yes SSDs existed and they
[TS]
00:29:39
◼
►
certainly didn't want to do anything
[TS]
00:29:40
◼
►
that would be silly on an SSD and I
[TS]
00:29:43
◼
►
don't think they did but they wasn't
[TS]
00:29:45
◼
►
designed for an SSD many of the
[TS]
00:29:47
◼
►
considerations in the file system design
[TS]
00:29:49
◼
►
were based on spinning disks and butter
[TS]
00:29:52
◼
►
FS looks a lot like ZFS but it's newer
[TS]
00:29:58
◼
►
so they may have more SSD stuff in mind
[TS]
00:30:00
◼
►
certainly there is no file system that I
[TS]
00:30:02
◼
►
know of that's in widespread use it was
[TS]
00:30:05
◼
►
designed from the ground up to say
[TS]
00:30:06
◼
►
forget spinning disks in fact if you run
[TS]
00:30:09
◼
►
this on a spinning disk it might be
[TS]
00:30:10
◼
►
hideous and terrible this is entirely a
[TS]
00:30:12
◼
►
ended SSD Boyd Watters wrote in to say
[TS]
00:30:16
◼
►
that to quote him plopping NAND flash
[TS]
00:30:21
◼
►
behind a SATA interface is stupid so
[TS]
00:30:24
◼
►
what he's put is showing is that thing
[TS]
00:30:25
◼
►
of the storage hierarchy that exists in
[TS]
00:30:27
◼
►
current things you got the CPU register
[TS]
00:30:30
◼
►
file you got the the caching on the CPU
[TS]
00:30:32
◼
►
then you've got the RAM then you've got
[TS]
00:30:33
◼
►
the the i/o controller chip then you've
[TS]
00:30:35
◼
►
got the the SATA interface and then
[TS]
00:30:38
◼
►
you've got this flash disk and you put
[TS]
00:30:39
◼
►
discs and
[TS]
00:30:40
◼
►
scare quotes because it's not actually a
[TS]
00:30:42
◼
►
disk why does that big structure exist
[TS]
00:30:47
◼
►
why do these flash memory chips have to
[TS]
00:30:51
◼
►
pretend they're a spinning disk does
[TS]
00:30:53
◼
►
that seem like a silly kind of archaic
[TS]
00:30:56
◼
►
it's kind of like a computational
[TS]
00:30:58
◼
►
skeuomorphism where it's pretending to
[TS]
00:31:02
◼
►
be a disk because everything expects
[TS]
00:31:03
◼
►
there to be a disk there but it's
[TS]
00:31:04
◼
►
totally not this is an interesting issue
[TS]
00:31:09
◼
►
that has come up many times in the in
[TS]
00:31:11
◼
►
the past decades like why do we had disk
[TS]
00:31:13
◼
►
and memory wouldn't it be nice if
[TS]
00:31:15
◼
►
everything was just memory that's the
[TS]
00:31:18
◼
►
you know the computer science dream
[TS]
00:31:19
◼
►
everything is just a big open field of
[TS]
00:31:21
◼
►
bits and it can be addressed randomly
[TS]
00:31:24
◼
►
written land rent they write or read
[TS]
00:31:26
◼
►
randomly and there's no difference
[TS]
00:31:29
◼
►
between something's in disk and it's in
[TS]
00:31:31
◼
►
memory just one big continuum one way to
[TS]
00:31:33
◼
►
do that would be to have notice can just
[TS]
00:31:34
◼
►
have everything in memory because then
[TS]
00:31:36
◼
►
everything is memory right but that's
[TS]
00:31:40
◼
►
generally not feasible because memory is
[TS]
00:31:42
◼
►
measured in you know gigabytes and disk
[TS]
00:31:45
◼
►
space is memory measured in terabytes so
[TS]
00:31:48
◼
►
they're not close and the other thing is
[TS]
00:31:49
◼
►
just less I have a unified interface
[TS]
00:31:50
◼
►
that yes it's flat flash is slower than
[TS]
00:31:55
◼
►
then DRAM but the Ihram is also slower
[TS]
00:31:58
◼
►
than l3 cache which is slower than l2
[TS]
00:31:59
◼
►
cache which is slower than l1 cache
[TS]
00:32:01
◼
►
which is slower than registers it's a
[TS]
00:32:02
◼
►
hierarchy of memory how close quote
[TS]
00:32:05
◼
►
unquote close is this memory to the CPU
[TS]
00:32:08
◼
►
how long does it take the CPU to get to
[TS]
00:32:10
◼
►
it that hierarchy exists and
[TS]
00:32:12
◼
►
traditionally if you were to graph how
[TS]
00:32:14
◼
►
you know how long does it take to get a
[TS]
00:32:16
◼
►
piece of memory out of l1 cache l2 cache
[TS]
00:32:18
◼
►
l3 cache it's like a hockey stick graph
[TS]
00:32:20
◼
►
and especially when you hit disk it's
[TS]
00:32:21
◼
►
like well now you might as well just go
[TS]
00:32:23
◼
►
on vacation because that that is not
[TS]
00:32:24
◼
►
going to be coming back for another 8
[TS]
00:32:25
◼
►
billion cycles of the CPU so forget it
[TS]
00:32:30
◼
►
flash memory is faster than just what
[TS]
00:32:32
◼
►
that wall is still there that the gap
[TS]
00:32:33
◼
►
between the speed of memory is still
[TS]
00:32:35
◼
►
there but still the idea is that why not
[TS]
00:32:38
◼
►
just have this is a uniform storage
[TS]
00:32:39
◼
►
hierarchy with uniform interface and not
[TS]
00:32:42
◼
►
have disk i/o to be this totally
[TS]
00:32:44
◼
►
separate thing that's something that
[TS]
00:32:48
◼
►
someone like Apple is not going to
[TS]
00:32:49
◼
►
probably tackle anytime soon but it's
[TS]
00:32:52
◼
►
been in the air
[TS]
00:32:54
◼
►
probably since the 60s or 70s the idea
[TS]
00:32:56
◼
►
that a unified interface to memory would
[TS]
00:32:58
◼
►
be better than and probably a lot of old
[TS]
00:33:00
◼
►
machines did have a unified interface
[TS]
00:33:01
◼
►
but in the end the person computer age
[TS]
00:33:05
◼
►
the split weakened disk in memory is
[TS]
00:33:06
◼
►
pretty baked into the way that we do
[TS]
00:33:09
◼
►
things so let's consider what might
[TS]
00:33:12
◼
►
change if everything was unified well
[TS]
00:33:17
◼
►
one thing that would have to change is
[TS]
00:33:19
◼
►
that the operating system would have to
[TS]
00:33:22
◼
►
be different because in the operating
[TS]
00:33:23
◼
►
system the file IO calls are very
[TS]
00:33:25
◼
►
different from the calls to manipulate
[TS]
00:33:26
◼
►
memory file alcohols you've got you know
[TS]
00:33:28
◼
►
opening files reading writing files
[TS]
00:33:30
◼
►
they're just structured differently take
[TS]
00:33:31
◼
►
different arguments have different
[TS]
00:33:32
◼
►
semantics than the memory calls which
[TS]
00:33:34
◼
►
are you know setting memory getting
[TS]
00:33:37
◼
►
memory copying memory and just bit
[TS]
00:33:39
◼
►
operations that happen in memory in two
[TS]
00:33:43
◼
►
entirely different api's so you couldn't
[TS]
00:33:46
◼
►
just say ok memory and disk or all one
[TS]
00:33:47
◼
►
because everyone's programs wouldn't
[TS]
00:33:49
◼
►
work anymore because that's you know
[TS]
00:33:51
◼
►
you'd have to you'd have to make some
[TS]
00:33:52
◼
►
sort of shim layer there and ideally
[TS]
00:33:54
◼
►
you'd want one unified interface to a
[TS]
00:33:56
◼
►
new set of api's that looks the same for
[TS]
00:34:00
◼
►
both of those things and what does that
[TS]
00:34:01
◼
►
new wear interface look like and who is
[TS]
00:34:03
◼
►
going to adopt that new integration
[TS]
00:34:04
◼
►
who's going to design it that's a big
[TS]
00:34:05
◼
►
problem one thing that would go away are
[TS]
00:34:08
◼
►
these really complicated api's that we
[TS]
00:34:10
◼
►
have now for memory mapping files where
[TS]
00:34:12
◼
►
you say look I want to manipulate this
[TS]
00:34:16
◼
►
really big file but I want to read every
[TS]
00:34:18
◼
►
single byte of it off disk and I want to
[TS]
00:34:19
◼
►
manipulate it as if it's all in memory
[TS]
00:34:21
◼
►
but I can't fit it all in memory so can
[TS]
00:34:22
◼
►
i memory map the file and memory mapping
[TS]
00:34:24
◼
►
will automatically make it look like
[TS]
00:34:25
◼
►
your entire files in memory but just
[TS]
00:34:26
◼
►
pulling the parts that you need on
[TS]
00:34:28
◼
►
demand and that's a very complicated
[TS]
00:34:30
◼
►
system and the API is very complicated
[TS]
00:34:33
◼
►
that's kind of stuff would go away if
[TS]
00:34:36
◼
►
you had a single unified interface to
[TS]
00:34:38
◼
►
the entire storage hierarchy or maybe
[TS]
00:34:40
◼
►
you would just shift and that becomes
[TS]
00:34:41
◼
►
part of this unified interface but it's
[TS]
00:34:43
◼
►
a complexity that exists now because we
[TS]
00:34:45
◼
►
know that files are much bigger than
[TS]
00:34:47
◼
►
memory we know we can't fit an entire
[TS]
00:34:48
◼
►
file in memory so we have to make this
[TS]
00:34:50
◼
►
weird illusion that it's kind of in
[TS]
00:34:52
◼
►
memory when it's not ah a big one that I
[TS]
00:34:55
◼
►
thought of is that you'd have to
[TS]
00:34:56
◼
►
reconsider limits limits that we take
[TS]
00:34:59
◼
►
for granted now so for example when you
[TS]
00:35:03
◼
►
run out of disk space that's a dead end
[TS]
00:35:05
◼
►
right now
[TS]
00:35:07
◼
►
no space left on device right that's
[TS]
00:35:10
◼
►
that's the end you know this there's no
[TS]
00:35:12
◼
►
program in existence that says when I
[TS]
00:35:15
◼
►
run out it's like what can it what kind
[TS]
00:35:16
◼
►
of program do well jeez on that it can
[TS]
00:35:18
◼
►
tell you I try to do that for you but
[TS]
00:35:20
◼
►
your disk is full so and and by the way
[TS]
00:35:23
◼
►
UNIX does not deal well with the disk
[TS]
00:35:24
◼
►
being full for reasons we'll probably
[TS]
00:35:26
◼
►
get into in a bit later uh and you don't
[TS]
00:35:30
◼
►
want you just to be complete full lots
[TS]
00:35:32
◼
►
of bad things happen but running out of
[TS]
00:35:34
◼
►
RAM waiting it what do you say UNIX
[TS]
00:35:36
◼
►
doesn't handle it well what does handle
[TS]
00:35:38
◼
►
it well or is that is that part of that
[TS]
00:35:41
◼
►
next topic yeah that what does handle it
[TS]
00:35:44
◼
►
well in it in the days before UNIX for
[TS]
00:35:46
◼
►
example in classic Mac OS in like really
[TS]
00:35:48
◼
►
classic Mac OS like you know system 4.2
[TS]
00:35:52
◼
►
you could have your disk filled up to
[TS]
00:35:54
◼
►
the brim and everything would still
[TS]
00:35:57
◼
►
pretty much work okay you know you
[TS]
00:35:58
◼
►
couldn't save stuff but you wouldn't be
[TS]
00:36:01
◼
►
using the thing and it would just blow
[TS]
00:36:03
◼
►
up whereas the UNIX uses the disk space
[TS]
00:36:06
◼
►
for all sorts of things and if your disk
[TS]
00:36:10
◼
►
even gets close to full lots of things
[TS]
00:36:12
◼
►
they're going to start falling down not
[TS]
00:36:13
◼
►
just the program you're using so you
[TS]
00:36:14
◼
►
can't just happily use your Mac with an
[TS]
00:36:16
◼
►
entirely full disk in fact I don't even
[TS]
00:36:18
◼
►
know if you can get your your disk
[TS]
00:36:19
◼
►
entirely full without sort of cheating
[TS]
00:36:20
◼
►
by putting it to single user mode and
[TS]
00:36:22
◼
►
using DD to fill up the disk I don't
[TS]
00:36:24
◼
►
even think you can boot with it with an
[TS]
00:36:25
◼
►
entirely full disk once you get anywhere
[TS]
00:36:27
◼
►
near close to disk full Mac os10 starts
[TS]
00:36:29
◼
►
throwing dialogues in your faces said
[TS]
00:36:30
◼
►
this is almost full seriously delete
[TS]
00:36:32
◼
►
stuff you've got a problem and there's a
[TS]
00:36:34
◼
►
good reason for that uh but in the
[TS]
00:36:37
◼
►
modern era running out of RAM is not a
[TS]
00:36:40
◼
►
dead end and I say the modern era being
[TS]
00:36:43
◼
►
like Mac OS 10 certainly but even in the
[TS]
00:36:45
◼
►
latter days of classic Mac OS what
[TS]
00:36:47
◼
►
happens when we run out of RAM is we're
[TS]
00:36:49
◼
►
not around all the time ah
[TS]
00:36:52
◼
►
you run out of RAM and you swap some
[TS]
00:36:56
◼
►
stuff to disk so you take some stuff
[TS]
00:36:58
◼
►
that's in memory though I don't have
[TS]
00:36:59
◼
►
room to put everything in memory that
[TS]
00:37:00
◼
►
need to put in a memory let me take
[TS]
00:37:02
◼
►
something that's in memory or write it
[TS]
00:37:03
◼
►
out to this temporarily now I've read up
[TS]
00:37:05
◼
►
some new room in memory and it tries to
[TS]
00:37:07
◼
►
put stuff on to disk
[TS]
00:37:08
◼
►
tries to swap stuff out that hasn't been
[TS]
00:37:11
◼
►
used in a while and this is the basis of
[TS]
00:37:13
◼
►
all modern virtual memory systems with
[TS]
00:37:16
◼
►
swap where they will
[TS]
00:37:19
◼
►
try to let it appear to your programs as
[TS]
00:37:21
◼
►
if you have way more RAM than you do so
[TS]
00:37:23
◼
►
programs back the old days and 32-bit
[TS]
00:37:26
◼
►
thing they would think that they had you
[TS]
00:37:27
◼
►
know two to four gigabytes of RAM when
[TS]
00:37:30
◼
►
maybe your computer only at 128
[TS]
00:37:32
◼
►
megabytes of RAM and the program was
[TS]
00:37:35
◼
►
blissfully unaware of that it would just
[TS]
00:37:36
◼
►
try to address memory in the operating
[TS]
00:37:38
◼
►
system every time you filled up the
[TS]
00:37:39
◼
►
actual RAM chips
[TS]
00:37:41
◼
►
it would just swap things in and out to
[TS]
00:37:43
◼
►
disk to make enough room for the stuff
[TS]
00:37:44
◼
►
you currently using in ram now swapping
[TS]
00:37:47
◼
►
is bad and it's slow because if your
[TS]
00:37:48
◼
►
program thinks something's in memory and
[TS]
00:37:50
◼
►
it asks the operating system for on the
[TS]
00:37:51
◼
►
operating system says actually that's
[TS]
00:37:53
◼
►
not in memory I had to put that in disk
[TS]
00:37:54
◼
►
for you but I'll wait I'll go get it on
[TS]
00:37:55
◼
►
the disk you just wait there it takes
[TS]
00:37:57
◼
►
forever for the operating system to come
[TS]
00:37:59
◼
►
back so here's this thing and the
[TS]
00:38:00
◼
►
program expected that to come back
[TS]
00:38:02
◼
►
really quickly so when your computer is
[TS]
00:38:05
◼
►
thrashing or swapping or one of these
[TS]
00:38:07
◼
►
other terms it means that it's trying to
[TS]
00:38:09
◼
►
access a bunch of stuff that it thinks
[TS]
00:38:10
◼
►
is in memory but a lot of it turns out
[TS]
00:38:12
◼
►
to be on disk and your disk ad they're
[TS]
00:38:13
◼
►
seeking all around to pull this stuff
[TS]
00:38:15
◼
►
off of the disk and putting other stuff
[TS]
00:38:16
◼
►
onto this because if it's on if it's on
[TS]
00:38:19
◼
►
disk has to pull it out maybe that's to
[TS]
00:38:20
◼
►
evict something else from RAM and put it
[TS]
00:38:21
◼
►
down there so that's situation we're in
[TS]
00:38:26
◼
►
now where a disk space fills up total
[TS]
00:38:28
◼
►
dead end RAM fills up it's not a dead
[TS]
00:38:30
◼
►
end but how is RAM filling up not a dead
[TS]
00:38:32
◼
►
it uses disk space and that's why if
[TS]
00:38:34
◼
►
your disk is full everything falls down
[TS]
00:38:37
◼
►
because all these programs think that
[TS]
00:38:38
◼
►
they have you know much more memory than
[TS]
00:38:41
◼
►
they really have and if they did blondie
[TS]
00:38:43
◼
►
continued to put stuff in memory in the
[TS]
00:38:44
◼
►
operating system says well that actually
[TS]
00:38:46
◼
►
can't fit in memory so what I'm supposed
[TS]
00:38:48
◼
►
to do on behalf of this program is evict
[TS]
00:38:50
◼
►
something from memory put that on disk
[TS]
00:38:53
◼
►
and then put his thing in that spot and
[TS]
00:38:54
◼
►
when it goes to evict something from
[TS]
00:38:55
◼
►
memory and put it on disk the disk is
[TS]
00:38:57
◼
►
full and that's why bad things start
[TS]
00:38:59
◼
►
happening classic Mac OS way back and
[TS]
00:39:01
◼
►
they did not have virtual memory which
[TS]
00:39:03
◼
►
is different than swap but it certainly
[TS]
00:39:04
◼
►
didn't have swap space so it could
[TS]
00:39:07
◼
►
happily hum along with its you know 512
[TS]
00:39:09
◼
►
K of RAM or whatever and if you hit the
[TS]
00:39:12
◼
►
512 K Ram limit ah that was the end of
[TS]
00:39:16
◼
►
that it wouldn't swap stuff out to disk
[TS]
00:39:17
◼
►
so if your disk was full no big deal
[TS]
00:39:20
◼
►
it's the only time it has to write
[TS]
00:39:22
◼
►
something on to disk is if you ask it to
[TS]
00:39:23
◼
►
not in your normal operation it didn't
[TS]
00:39:26
◼
►
write stuff and UNIX of course has log
[TS]
00:39:27
◼
►
files that are constantly being appended
[TS]
00:39:29
◼
►
to and other things that are going on in
[TS]
00:39:30
◼
►
the background slowly filling in your
[TS]
00:39:31
◼
►
disk that
[TS]
00:39:32
◼
►
know about and if your disk is full all
[TS]
00:39:33
◼
►
those things freak out and say you know
[TS]
00:39:36
◼
►
we've got a problem here they would
[TS]
00:39:37
◼
►
probably they would probably try to log
[TS]
00:39:38
◼
►
the fact that they got a no space left
[TS]
00:39:40
◼
►
on device message and that would cause
[TS]
00:39:41
◼
►
more Disgaea which would also fail and
[TS]
00:39:43
◼
►
it's just a vaccine so there's an
[TS]
00:39:47
◼
►
exception to this in the modern error
[TS]
00:39:48
◼
►
which is iOS which some people also
[TS]
00:39:51
◼
►
asked about iOS if you run out of disk
[TS]
00:39:55
◼
►
space that's a dead end still if you run
[TS]
00:39:58
◼
►
out of RAM on iOS it's also a didn't
[TS]
00:40:02
◼
►
because iOS though it implements virtual
[TS]
00:40:04
◼
►
memory virtual memory is the mechanism
[TS]
00:40:06
◼
►
by which the programs think they have
[TS]
00:40:08
◼
►
much more memory and they do then they
[TS]
00:40:10
◼
►
really do and they think they all have
[TS]
00:40:11
◼
►
their own memory space to themselves
[TS]
00:40:14
◼
►
it has virtual memory but it does not
[TS]
00:40:16
◼
►
use swap so when you fill up all the RAM
[TS]
00:40:19
◼
►
on iOS it doesn't say oh let me put that
[TS]
00:40:21
◼
►
on quote-unquote disk for you it's disk
[TS]
00:40:23
◼
►
is obviously flash what it does is kills
[TS]
00:40:25
◼
►
your program in fact to kill your
[TS]
00:40:26
◼
►
program long before that iOS is a very
[TS]
00:40:28
◼
►
hostile environment for programs and the
[TS]
00:40:30
◼
►
the application environment for running
[TS]
00:40:33
◼
►
GUI applications in iOS will send your
[TS]
00:40:37
◼
►
application a low memory warning if it
[TS]
00:40:38
◼
►
starts using too much RAM and if the
[TS]
00:40:42
◼
►
program does not respond by freeing
[TS]
00:40:43
◼
►
memory eventually the operating system
[TS]
00:40:45
◼
►
will just kill that program say look I
[TS]
00:40:46
◼
►
sent you a message I told you you're
[TS]
00:40:47
◼
►
getting close to the memory limit I'm
[TS]
00:40:48
◼
►
gonna have to kill you because if you
[TS]
00:40:49
◼
►
ever hit the memory limit on iOS that's
[TS]
00:40:53
◼
►
it it's not you know I need more space
[TS]
00:40:55
◼
►
well RAM is full and there's no more RAM
[TS]
00:40:57
◼
►
we can't make new Ram out of thin air
[TS]
00:40:59
◼
►
and we're not going to swap the flash
[TS]
00:41:00
◼
►
now one of the reasons that iOS doesn't
[TS]
00:41:01
◼
►
swap to flash is because even though
[TS]
00:41:04
◼
►
flash is faster than disk it's still way
[TS]
00:41:06
◼
►
way WAY slower than Ram so that's one of
[TS]
00:41:10
◼
►
the reasons that iOS has always been so
[TS]
00:41:11
◼
►
responsive because to get that kind of
[TS]
00:41:13
◼
►
responsiveness that's how it's running a
[TS]
00:41:15
◼
►
variant of Mac OS 10 we're doing virtual
[TS]
00:41:17
◼
►
memory but we cannot afford to like oh
[TS]
00:41:20
◼
►
when I swipe something on the screen oh
[TS]
00:41:21
◼
►
hang on a second I gotta pull a bunch of
[TS]
00:41:23
◼
►
that stuff that you thought was in
[TS]
00:41:24
◼
►
memory actually it's on my flash disk
[TS]
00:41:26
◼
►
and I got to pull it off the disk and
[TS]
00:41:28
◼
►
it's it can take a thousand times longer
[TS]
00:41:29
◼
►
than you thought it would and then you
[TS]
00:41:30
◼
►
get the stuttery animation or anything
[TS]
00:41:32
◼
►
maybe someday that will change but for
[TS]
00:41:35
◼
►
now as far as I'm aware maybe someone
[TS]
00:41:37
◼
►
can correct me
[TS]
00:41:38
◼
►
Iowa still does not use swap space it
[TS]
00:41:41
◼
►
puts everything in RAM so if you're
[TS]
00:41:44
◼
►
going to unify disk
[TS]
00:41:45
◼
►
and ram into one type of thing
[TS]
00:41:49
◼
►
everything would have to become a dead
[TS]
00:41:51
◼
►
because you have no other place to put
[TS]
00:41:53
◼
►
stuff right like when you run out of
[TS]
00:41:56
◼
►
whatever you're going to call this thing
[TS]
00:41:58
◼
►
when you run out of memory that means
[TS]
00:41:59
◼
►
that your caches are full you know they
[TS]
00:42:02
◼
►
know you can put in a register can't put
[TS]
00:42:04
◼
►
it in a cache you can't put it in RAM
[TS]
00:42:05
◼
►
and uh your disk is also full and I
[TS]
00:42:10
◼
►
think that would be a bad place to be
[TS]
00:42:13
◼
►
because you could imagine getting
[TS]
00:42:14
◼
►
machine into a deadlock situation
[TS]
00:42:15
◼
►
hopefully not hopefully in a consistent
[TS]
00:42:17
◼
►
state of some kind but where do you go
[TS]
00:42:19
◼
►
from there you don't have an out you
[TS]
00:42:20
◼
►
don't have a place to put stuff maybe
[TS]
00:42:22
◼
►
we're just carve off it you would not do
[TS]
00:42:23
◼
►
the same thing where it would say if you
[TS]
00:42:25
◼
►
get close to the limit of my giant pool
[TS]
00:42:27
◼
►
of memory I'm going to warn you and then
[TS]
00:42:30
◼
►
I'm going to kill stuff off because we
[TS]
00:42:31
◼
►
cannot hit that limit sort of like you
[TS]
00:42:35
◼
►
know it does with disk space today where
[TS]
00:42:36
◼
►
you just can't get close to that limit
[TS]
00:42:38
◼
►
on disk pacer will start yelling about
[TS]
00:42:39
◼
►
you but Ram the operating system will
[TS]
00:42:41
◼
►
let you continue to use it and use it
[TS]
00:42:42
◼
►
when you have virtual memory with swap
[TS]
00:42:44
◼
►
until your computer becomes so slow that
[TS]
00:42:46
◼
►
you're discouraged from using it any
[TS]
00:42:47
◼
►
longer and you walk away and wait for
[TS]
00:42:49
◼
►
everything to swap in and out so I think
[TS]
00:42:52
◼
►
this is an interesting topic I don't
[TS]
00:42:54
◼
►
know what will happen in this area I
[TS]
00:42:57
◼
►
don't think any time in my lifetime
[TS]
00:42:58
◼
►
we're going to see this grand unified a
[TS]
00:43:02
◼
►
single pool of memory thing but if it is
[TS]
00:43:07
◼
►
going to happen I think it will happen
[TS]
00:43:08
◼
►
somewhere in the mobile space where the
[TS]
00:43:10
◼
►
sizes are smaller and the entrenched
[TS]
00:43:14
◼
►
system of dividing RAM and disk are not
[TS]
00:43:19
◼
►
as prevalent as they are on the PC
[TS]
00:43:26
◼
►
that's the end of my fake follow up
[TS]
00:43:29
◼
►
follow up I was what's fake about that I
[TS]
00:43:32
◼
►
thought it was very real well it was you
[TS]
00:43:34
◼
►
know it's talking about SSD is not
[TS]
00:43:37
◼
►
following up something we said last time
[TS]
00:43:38
◼
►
but it's a new top oh I see yeah so your
[TS]
00:43:41
◼
►
your confidence level of SSD over the
[TS]
00:43:46
◼
►
traditional Drive as far as a strategy
[TS]
00:43:50
◼
►
for Apple what are your thoughts on that
[TS]
00:43:51
◼
►
long-term strategy Apple's hardware
[TS]
00:43:54
◼
►
everything SSD yeah has to be mean it's
[TS]
00:43:58
◼
►
going to have
[TS]
00:43:59
◼
►
it's just a question of how long it
[TS]
00:44:00
◼
►
takes with Apple sells consumer hardware
[TS]
00:44:02
◼
►
so they don't have to deal with like
[TS]
00:44:03
◼
►
well I need to store petabytes of data
[TS]
00:44:05
◼
►
like they're not selling servers for the
[TS]
00:44:07
◼
►
data center and SSDs are way more
[TS]
00:44:10
◼
►
expensive than spinning disks we're just
[TS]
00:44:14
◼
►
kind of that inflection point where they
[TS]
00:44:15
◼
►
can say like when I got my MacBook Air
[TS]
00:44:19
◼
►
like the biggest s is the you get was
[TS]
00:44:20
◼
►
256 and that's what I got and that was
[TS]
00:44:23
◼
►
still bigger than 160 gig spinning disk
[TS]
00:44:25
◼
►
that was in my old MacBook Pro so it was
[TS]
00:44:27
◼
►
still a step up but you can get like
[TS]
00:44:30
◼
►
terabyte now I think terabyte laptop
[TS]
00:44:32
◼
►
drives are available it's four times
[TS]
00:44:34
◼
►
smaller than than the the biggest lap
[TS]
00:44:37
◼
►
spinning laptop drive you can get and
[TS]
00:44:39
◼
►
way way way more expensive so they're
[TS]
00:44:43
◼
►
just on the borderline of like you can
[TS]
00:44:45
◼
►
make people choke down a much higher
[TS]
00:44:48
◼
►
price for less space just because the
[TS]
00:44:50
◼
►
performance is so much better but they
[TS]
00:44:52
◼
►
haven't quite crawled up to like can I
[TS]
00:44:54
◼
►
convince someone to buy a Mac Pro with
[TS]
00:44:56
◼
►
just SSDs in it someone who wants a Mac
[TS]
00:44:59
◼
►
Pro probably wants a lot more internal
[TS]
00:45:00
◼
►
storage space than 256 gigs and those
[TS]
00:45:02
◼
►
drives are so expensive if you buy for
[TS]
00:45:04
◼
►
them now the entire cost of your
[TS]
00:45:06
◼
►
computer is basically just an SSD so the
[TS]
00:45:09
◼
►
price keeps going down the storage space
[TS]
00:45:10
◼
►
keeps going up eventually there'll be a
[TS]
00:45:13
◼
►
point where spinning disks are just seen
[TS]
00:45:17
◼
►
as archaic and everyone has to have SSDs
[TS]
00:45:19
◼
►
and only the people who really need
[TS]
00:45:21
◼
►
gigantic amount of space need spinning
[TS]
00:45:22
◼
►
disks and eventually those will probably
[TS]
00:45:24
◼
►
go away - so that's inevitable you just
[TS]
00:45:27
◼
►
get used to the fact that as as these
[TS]
00:45:29
◼
►
are coming how long before every single
[TS]
00:45:33
◼
►
computer Apple makes has SSD by default
[TS]
00:45:35
◼
►
the kinds of if they discontinue the Mac
[TS]
00:45:38
◼
►
Pros thoughts on discontinuing the Mac
[TS]
00:45:40
◼
►
Pro don't do it that's my thought please
[TS]
00:45:43
◼
►
as you do it you'd like you like the Mac
[TS]
00:45:45
◼
►
Pro and you're you're a big-time Mac Pro
[TS]
00:45:47
◼
►
user yeah you don't want them to get rid
[TS]
00:45:49
◼
►
of it I was I saw an article from I
[TS]
00:45:52
◼
►
don't know if you've spoken with him but
[TS]
00:45:54
◼
►
he's a friend of mine he used to do a
[TS]
00:45:56
◼
►
show here as well James Duncan Davidson
[TS]
00:45:59
◼
►
he's a photographer and right now or
[TS]
00:46:02
◼
►
very recently he was out shooting Ted
[TS]
00:46:04
◼
►
and he was saying that every year that
[TS]
00:46:06
◼
►
he shot Ted which is a number of years
[TS]
00:46:08
◼
►
these guys they spare no expense when it
[TS]
00:46:11
◼
►
comes to having great
[TS]
00:46:12
◼
►
hardware for the people who are doing
[TS]
00:46:14
◼
►
the audio video editing and then the
[TS]
00:46:17
◼
►
photography editing and things like that
[TS]
00:46:18
◼
►
and they set up a whole lab I'll try and
[TS]
00:46:21
◼
►
put I'll try and put one of these
[TS]
00:46:22
◼
►
pictures that he's taken of the lab into
[TS]
00:46:25
◼
►
the show notes and by the way thanks to
[TS]
00:46:28
◼
►
help spot calm for the show notes and
[TS]
00:46:31
◼
►
this year instead of having two dozen
[TS]
00:46:35
◼
►
Mac Pros they now have two dozen IMAX
[TS]
00:46:39
◼
►
with Thunderbolt drives connected to
[TS]
00:46:42
◼
►
them raid Thunderbolt drives connected
[TS]
00:46:44
◼
►
to them and they have officially moved
[TS]
00:46:46
◼
►
away completely from Mac Pros and now
[TS]
00:46:49
◼
►
they just have IMAX and it makes you
[TS]
00:46:51
◼
►
think that if if a company like tad if a
[TS]
00:46:54
◼
►
group like Ted is as as serious and
[TS]
00:46:58
◼
►
dedicated as they are to doing real and
[TS]
00:47:02
◼
►
if you've ever watched the Ted videos
[TS]
00:47:04
◼
►
you know these are these are phenomenal
[TS]
00:47:06
◼
►
videos they have the best audio-video
[TS]
00:47:08
◼
►
photographer people in the business
[TS]
00:47:09
◼
►
making them and editing them and turning
[TS]
00:47:12
◼
►
them around in almost real-time it's
[TS]
00:47:14
◼
►
it's crazy how fast they put these
[TS]
00:47:16
◼
►
things out there they're content with
[TS]
00:47:19
◼
►
IMAX why why would Apple keep making the
[TS]
00:47:23
◼
►
Mac Pro who is that for isn't the
[TS]
00:47:25
◼
►
Thunderbolt the obvious indication that
[TS]
00:47:27
◼
►
they're serious about moving away from
[TS]
00:47:29
◼
►
the Mac Pro well that particular
[TS]
00:47:33
◼
►
application I think doesn't need the
[TS]
00:47:36
◼
►
massive amounts of storage because kind
[TS]
00:47:38
◼
►
of a way station for a workflow that
[TS]
00:47:40
◼
►
takes assets from the day and grinds
[TS]
00:47:42
◼
►
them up and spits out some new assets
[TS]
00:47:44
◼
►
where you need the big spinning disks
[TS]
00:47:47
◼
►
that can store so much more than SSDs
[TS]
00:47:48
◼
►
for so much less money is where does the
[TS]
00:47:51
◼
►
company that is responsible for
[TS]
00:47:54
◼
►
recording all of Ted and producing all
[TS]
00:47:56
◼
►
the content where does it distorts
[TS]
00:47:58
◼
►
information where does it start all the
[TS]
00:48:00
◼
►
raw videos all the raw images all the
[TS]
00:48:02
◼
►
processed files everything forever
[TS]
00:48:04
◼
►
archived maybe puts them all on tape and
[TS]
00:48:09
◼
►
that's the answer but I think companies
[TS]
00:48:11
◼
►
that have large storage requirements
[TS]
00:48:13
◼
►
like people doing special effects for
[TS]
00:48:14
◼
►
movies or something like that they'll
[TS]
00:48:17
◼
►
use SSDs for the parts where speed
[TS]
00:48:19
◼
►
matters but at some point that like they
[TS]
00:48:21
◼
►
don't want to ever throw anything out
[TS]
00:48:22
◼
►
you want to have all your assets and all
[TS]
00:48:23
◼
►
everything redundantly stored in a
[TS]
00:48:24
◼
►
million place and that takes up a
[TS]
00:48:25
◼
►
tremendous and
[TS]
00:48:26
◼
►
room even just for one movie let alone
[TS]
00:48:28
◼
►
movie after movie like how many assets
[TS]
00:48:29
◼
►
do you think Pixar has stored
[TS]
00:48:31
◼
►
permanently yeah it accessible not on
[TS]
00:48:34
◼
►
tape or some robot has to go pull a tape
[TS]
00:48:36
◼
►
out and shove it in but accessible in
[TS]
00:48:38
◼
►
semi real-time because you might want to
[TS]
00:48:39
◼
►
use that asset for a new production you
[TS]
00:48:41
◼
►
need some list to put all that stuff in
[TS]
00:48:42
◼
►
SSDs just cost too much money to to do
[TS]
00:48:45
◼
►
that now spinning disks are so much more
[TS]
00:48:47
◼
►
economical especially since you have to
[TS]
00:48:49
◼
►
have 20 of them because you have to have
[TS]
00:48:50
◼
►
everything redundantly stored and you
[TS]
00:48:52
◼
►
know I there is still a big market for
[TS]
00:48:55
◼
►
it for spinning discs now is that is
[TS]
00:48:58
◼
►
Apple does Apple have any part of that
[TS]
00:48:59
◼
►
market maybe they're going to say look
[TS]
00:49:02
◼
►
if you want to do that you're gonna have
[TS]
00:49:03
◼
►
to buy disk storage from EMC or
[TS]
00:49:05
◼
►
something just like we at Apple do for
[TS]
00:49:07
◼
►
our data centers because we're not
[TS]
00:49:08
◼
►
interested in giving you a machine that
[TS]
00:49:11
◼
►
can store all that stuff or as you said
[TS]
00:49:12
◼
►
our machines can't store it buy an iMac
[TS]
00:49:15
◼
►
and connect one of these big raid things
[TS]
00:49:17
◼
►
that we also don't make to a Thunderbolt
[TS]
00:49:20
◼
►
cable you have really fast access to to
[TS]
00:49:22
◼
►
lots of storage the Mac Pro as a product
[TS]
00:49:25
◼
►
exists for reasons other than just
[TS]
00:49:27
◼
►
internal drives though it's got the
[TS]
00:49:28
◼
►
slots where you can put cards that you
[TS]
00:49:29
◼
►
might need cards that don't fit inside
[TS]
00:49:31
◼
►
the iMac because there's no place for
[TS]
00:49:32
◼
►
cards at all and yet maybe you can use a
[TS]
00:49:34
◼
►
Thunderbolt external chassis but the
[TS]
00:49:35
◼
►
number of PCI Express Lanes over a
[TS]
00:49:37
◼
►
thunderbolt wire is not that that bus is
[TS]
00:49:41
◼
►
not as wide as an internal slot so there
[TS]
00:49:44
◼
►
are many reasons why the Mac Pro still
[TS]
00:49:45
◼
►
needs to exist the fact that they
[TS]
00:49:46
◼
►
switched from Mac Pro Stimac for that
[TS]
00:49:48
◼
►
Ted thing they probably could have
[TS]
00:49:50
◼
►
gotten away with imax even sooner
[TS]
00:49:53
◼
►
because it's just kind of a way station
[TS]
00:49:54
◼
►
and not something that needs to have
[TS]
00:49:56
◼
►
lots of storage and those big you know
[TS]
00:49:58
◼
►
big special-purpose cards and yeah and
[TS]
00:50:01
◼
►
also the other thing to keep in mind is
[TS]
00:50:02
◼
►
that Ted probably has a lot of money you
[TS]
00:50:05
◼
►
would think so I put I I did find the
[TS]
00:50:07
◼
►
article and the pictures that go along
[TS]
00:50:09
◼
►
with it I put it into the show notes and
[TS]
00:50:10
◼
►
he says for Ted 2012 there's a pretty do
[TS]
00:50:13
◼
►
you say SATA or sad at these days I say
[TS]
00:50:16
◼
►
both okay for Ted 2012 there's a pretty
[TS]
00:50:19
◼
►
big change in the media room instead of
[TS]
00:50:20
◼
►
dozens of Mac Pros and piles of SATA
[TS]
00:50:22
◼
►
drives like there have been in the last
[TS]
00:50:24
◼
►
eight Ted events I've been part of the
[TS]
00:50:26
◼
►
room is full of IMAX and Thunderbolt
[TS]
00:50:28
◼
►
drives lots of Thunderbolt drives and he
[TS]
00:50:30
◼
►
has a photograph here he says there are
[TS]
00:50:31
◼
►
12 12 12 terabyte Pegasus are six arrays
[TS]
00:50:36
◼
►
that's a hundred and forty four
[TS]
00:50:37
◼
►
terabytes total
[TS]
00:50:39
◼
►
he says it which is about a tenth of a
[TS]
00:50:41
◼
►
petabyte of usual usable space for good
[TS]
00:50:44
◼
►
measure there are a few more pegasus
[TS]
00:50:45
◼
►
arrays including one that's dedicated to
[TS]
00:50:47
◼
►
photography and he goes on to detail
[TS]
00:50:49
◼
►
this and he says this is the biggest
[TS]
00:50:52
◼
►
appointment of thunderbolt based storage
[TS]
00:50:53
◼
►
that he's seen yeah I think Thunderbolt
[TS]
00:50:56
◼
►
has made it feasible to have external
[TS]
00:50:59
◼
►
storage that's really fast without
[TS]
00:51:02
◼
►
having some weird interface card like
[TS]
00:51:04
◼
►
fiber channel or something because
[TS]
00:51:06
◼
►
internal disk was the way the way how
[TS]
00:51:08
◼
►
you get the speed right because you know
[TS]
00:51:10
◼
►
it's fast as possible as you can get
[TS]
00:51:11
◼
►
it's connected right to the thing
[TS]
00:51:12
◼
►
there's no long wire there's no weird
[TS]
00:51:14
◼
►
interface it's you know sad is pretty
[TS]
00:51:15
◼
►
fast and they would keep cranking up the
[TS]
00:51:16
◼
►
speed and then once you went out over
[TS]
00:51:19
◼
►
firewire like firewire 400 in particular
[TS]
00:51:21
◼
►
was not enough to handle the output of a
[TS]
00:51:24
◼
►
arrayed with many spindles or any large
[TS]
00:51:27
◼
►
array like that firewire 800 was an
[TS]
00:51:29
◼
►
improvement but still I think as the the
[TS]
00:51:32
◼
►
Thunderbolt devices they're available
[TS]
00:51:34
◼
►
today show they'll take like a four disc
[TS]
00:51:36
◼
►
firewire 800 Drive and then I'll take a
[TS]
00:51:39
◼
►
four disc Thunderbolt array maybe it's
[TS]
00:51:42
◼
►
the same exact four mechanisms in each
[TS]
00:51:44
◼
►
set light but that by eight mechanisms
[TS]
00:51:45
◼
►
but form one form the other and the
[TS]
00:51:46
◼
►
Thunderbolt ones just transit because
[TS]
00:51:48
◼
►
Thunderbolt is like an external
[TS]
00:51:50
◼
►
extension of an internal bus in this
[TS]
00:51:52
◼
►
case it's the PCI Express bus so that
[TS]
00:51:54
◼
►
that probably makes it feasible for them
[TS]
00:51:56
◼
►
to have storage that's fast enough to do
[TS]
00:51:59
◼
►
all this HD video streaming or whatever
[TS]
00:52:00
◼
►
they're doing whilst just hooking it up
[TS]
00:52:03
◼
►
to an iMac with that little Thunderbolt
[TS]
00:52:04
◼
►
cable but the Mac pros are still an open
[TS]
00:52:07
◼
►
question I think let's do our second
[TS]
00:52:10
◼
►
sponsor its tiny letter comm they're
[TS]
00:52:12
◼
►
just they're putting the finishing
[TS]
00:52:13
◼
►
touches on a brand-new version and this
[TS]
00:52:16
◼
►
is very exciting they have been working
[TS]
00:52:18
◼
►
hard on this I talked to them about it
[TS]
00:52:20
◼
►
and a tiny letter in general the best
[TS]
00:52:23
◼
►
way for me to describe it to you is it
[TS]
00:52:25
◼
►
is the most simple straightforward
[TS]
00:52:27
◼
►
newsletter tool that has ever existed in
[TS]
00:52:30
◼
►
the history of the earth it's elegant
[TS]
00:52:33
◼
►
it's simple its straightforward it gets
[TS]
00:52:36
◼
►
rid of all of the extra features and
[TS]
00:52:38
◼
►
cruft and user interface layers and
[TS]
00:52:41
◼
►
throws all that out the window now some
[TS]
00:52:43
◼
►
people might want that go to MailChimp
[TS]
00:52:45
◼
►
com if you want that you don't want that
[TS]
00:52:47
◼
►
tiny letter super simple elegant
[TS]
00:52:51
◼
►
straightforward tiny letter com
[TS]
00:52:53
◼
►
they have a sneak peak video that they
[TS]
00:52:55
◼
►
just put up to give you an idea of what
[TS]
00:52:57
◼
►
it's going to be like within the next
[TS]
00:53:01
◼
►
few days when this thing comes out so go
[TS]
00:53:03
◼
►
check it out thanks very much two tiny
[TS]
00:53:05
◼
►
letter calm for making the show possible
[TS]
00:53:06
◼
►
I do actually have some more files of
[TS]
00:53:10
◼
►
some stuff lurking at the bottom here
[TS]
00:53:12
◼
►
we're going to talk about BOS no okay
[TS]
00:53:15
◼
►
would be good ID now you give me more
[TS]
00:53:16
◼
►
stuff I tried the Kappas to shows I had
[TS]
00:53:18
◼
►
to assume well I actually I wanted to
[TS]
00:53:21
◼
►
talk more about ZFS because all the
[TS]
00:53:23
◼
►
stuff we talked about was EFS was
[TS]
00:53:25
◼
►
focused on the particular failings of
[TS]
00:53:27
◼
►
HFS+ and how they're addressed by ZFS
[TS]
00:53:29
◼
►
with data integrity and all that but
[TS]
00:53:32
◼
►
there are so many more things as e of us
[TS]
00:53:33
◼
►
that I realize they didn't even get to
[TS]
00:53:34
◼
►
that are interesting and other reasons
[TS]
00:53:36
◼
►
why you might be interest why you might
[TS]
00:53:39
◼
►
want this process like things that H of
[TS]
00:53:41
◼
►
us aren't even a glimmer in HFS+ is I
[TS]
00:53:44
◼
►
but that our most modern bus system cell
[TS]
00:53:46
◼
►
and I imagine all sorry F SS but we
[TS]
00:53:49
◼
►
didn't quite get to it okay so the first
[TS]
00:53:51
◼
►
one which I think I mentioned this is
[TS]
00:53:53
◼
►
these are advantages of ZFS or neat
[TS]
00:53:55
◼
►
features of ZFS S and there a lot of
[TS]
00:53:56
◼
►
them are not unique to ZFS but I'm using
[TS]
00:53:58
◼
►
it as the poster boy for a modern ish
[TS]
00:54:01
◼
►
file system first one is constant time
[TS]
00:54:04
◼
►
snapshots and clones that is a mouthful
[TS]
00:54:07
◼
►
there so I'll explain the pros also in
[TS]
00:54:11
◼
►
the middle part snapshots so a snapshot
[TS]
00:54:13
◼
►
is like the word says kind of at
[TS]
00:54:17
◼
►
capturing the state of a disk at a
[TS]
00:54:20
◼
►
moment in time and obviously we talked
[TS]
00:54:24
◼
►
about this before it's a consistent
[TS]
00:54:25
◼
►
state so the file system might be
[TS]
00:54:28
◼
►
applications might be in the middle of
[TS]
00:54:30
◼
►
doing stuff might be in the middle of
[TS]
00:54:31
◼
►
writing files out or deleting stuff or
[TS]
00:54:33
◼
►
whatever but you're going to take a
[TS]
00:54:34
◼
►
snapshot and say look at that
[TS]
00:54:35
◼
►
application might be in the null writing
[TS]
00:54:36
◼
►
that file and it might have written half
[TS]
00:54:38
◼
►
the file but as far as the file system
[TS]
00:54:40
◼
►
concerned at this moment in time it
[TS]
00:54:42
◼
►
knows where everything is it knows
[TS]
00:54:43
◼
►
exactly the size of everything
[TS]
00:54:44
◼
►
everything is all the bookkeeping agrees
[TS]
00:54:46
◼
►
with each other that half written file
[TS]
00:54:49
◼
►
it knows that that file is is one
[TS]
00:54:51
◼
►
megabyte ah maybe the file will
[TS]
00:54:53
◼
►
eventually be two megabytes when the
[TS]
00:54:54
◼
►
applications done but right now one
[TS]
00:54:56
◼
►
megabyte is on disk the metadata says
[TS]
00:54:57
◼
►
one megabyte it is a moment in time
[TS]
00:54:59
◼
►
snapshot ah
[TS]
00:55:00
◼
►
and what ZFS can do is freeze that and
[TS]
00:55:05
◼
►
say okay now at any
[TS]
00:55:07
◼
►
in the future if you ever want to see
[TS]
00:55:08
◼
►
what this file system was like at this
[TS]
00:55:10
◼
►
particular moment in time it's available
[TS]
00:55:12
◼
►
to you you can look at what it looked
[TS]
00:55:14
◼
►
like at this moment in time the constant
[TS]
00:55:18
◼
►
time part means that a time required to
[TS]
00:55:22
◼
►
take a snapshot doesn't scale with the
[TS]
00:55:25
◼
►
size of the disk so it's not like it
[TS]
00:55:26
◼
►
makes a big giant copy like you so you
[TS]
00:55:29
◼
►
have a terabyte drive when you say ok
[TS]
00:55:31
◼
►
take a snapshot doesn't say ok I'm going
[TS]
00:55:32
◼
►
to take the entire terabyte you know say
[TS]
00:55:34
◼
►
this 500 you know gigabytes on there I
[TS]
00:55:36
◼
►
take this entire 500 gigabytes and copy
[TS]
00:55:38
◼
►
it someplace else it doesn't do that
[TS]
00:55:41
◼
►
because of the way the file system is
[TS]
00:55:43
◼
►
structured it can just make a note that
[TS]
00:55:46
◼
►
this particular moment in time is
[TS]
00:55:47
◼
►
important and it should be preserved
[TS]
00:55:48
◼
►
remember that ZFS like many other file
[TS]
00:55:50
◼
►
systems avoids overriding data in place
[TS]
00:55:53
◼
►
it writes all new changes to a new
[TS]
00:55:54
◼
►
location when it does that the old
[TS]
00:55:57
◼
►
location eventually falls out of use
[TS]
00:55:59
◼
►
when no more processes have that file
[TS]
00:56:03
◼
►
open when nobody else is using it said
[TS]
00:56:05
◼
►
that was the old version of this file
[TS]
00:56:06
◼
►
the new one is way over there so now
[TS]
00:56:09
◼
►
we'll just say ok this the space
[TS]
00:56:10
◼
►
previously occupied by the old file is
[TS]
00:56:12
◼
►
free to be thrown back into the pool all
[TS]
00:56:13
◼
►
a snapshot does is tell the filesystem
[TS]
00:56:17
◼
►
hey all of these things that make up
[TS]
00:56:20
◼
►
this moment in time of the filesystem
[TS]
00:56:21
◼
►
don't throw them out even when
[TS]
00:56:23
◼
►
everybody's done with them keep them
[TS]
00:56:24
◼
►
around so the literature on ZFS will say
[TS]
00:56:27
◼
►
that this is instantaneous instantaneous
[TS]
00:56:29
◼
►
snapshot Gration it's not instantaneous
[TS]
00:56:31
◼
►
but the point is that it's constant time
[TS]
00:56:33
◼
►
that it doesn't take twice as long to
[TS]
00:56:35
◼
►
take a snapshot of a one terabyte discus
[TS]
00:56:37
◼
►
as that is a 500 gig disk because the
[TS]
00:56:39
◼
►
operation is basically a simple
[TS]
00:56:40
◼
►
bookkeeping operation of saying all the
[TS]
00:56:43
◼
►
stuff that you need with the snapshot is
[TS]
00:56:44
◼
►
already on disk all I'm telling you is
[TS]
00:56:47
◼
►
don't throw that stuff out later so it's
[TS]
00:56:50
◼
►
very quick to note that like this moment
[TS]
00:56:52
◼
►
in time it's a snapshot and you just
[TS]
00:56:54
◼
►
store a little bit of metadata about
[TS]
00:56:55
◼
►
here's a snapshot and here's you know
[TS]
00:56:56
◼
►
that here's where it is in the time
[TS]
00:56:58
◼
►
sequence of events and don't delete that
[TS]
00:56:59
◼
►
stuff because it's preserving as the
[TS]
00:57:01
◼
►
snapshot so it's really just a promise
[TS]
00:57:05
◼
►
in the future to not ditch those old
[TS]
00:57:08
◼
►
blocks that have new versions written to
[TS]
00:57:10
◼
►
them and that's something you can't even
[TS]
00:57:12
◼
►
imagine doing hfs+ because in nature I
[TS]
00:57:14
◼
►
suppose everything is written in place
[TS]
00:57:15
◼
►
and if you wanted to know what your disk
[TS]
00:57:16
◼
►
looks like in a moment in time there's
[TS]
00:57:17
◼
►
nothing available to you to do that
[TS]
00:57:19
◼
►
the only thing you could possibly do
[TS]
00:57:20
◼
►
is stopped all processes but you can't
[TS]
00:57:23
◼
►
really do butts is always something
[TS]
00:57:24
◼
►
vlogging in the background and UNIX or
[TS]
00:57:25
◼
►
whatever but try to freeze it you know
[TS]
00:57:27
◼
►
quit every application kill all
[TS]
00:57:28
◼
►
processes is that the possible minimal
[TS]
00:57:30
◼
►
maybe rebooting single user mode or
[TS]
00:57:32
◼
►
something and then make an exact clone
[TS]
00:57:34
◼
►
of this disk to a second location either
[TS]
00:57:36
◼
►
a second disk or a second partition as
[TS]
00:57:39
◼
►
you can imagine making an exact clone of
[TS]
00:57:41
◼
►
a disk takes a long time and if it takes
[TS]
00:57:43
◼
►
twice as long to make clone of a
[TS]
00:57:45
◼
►
terabyte disk as a 500 gig disk and that
[TS]
00:57:47
◼
►
amount of time is like measured in hours
[TS]
00:57:49
◼
►
probably this is versus ZFS where you
[TS]
00:57:52
◼
►
can just snap your fingers and set up
[TS]
00:57:53
◼
►
make a snapshot of that so I can get
[TS]
00:57:54
◼
►
back to it anytime now clones are
[TS]
00:57:57
◼
►
writable snapshots clones let you say
[TS]
00:58:01
◼
►
okay take a snapshot of it but actually
[TS]
00:58:04
◼
►
let people make future changes to that
[TS]
00:58:06
◼
►
snapshot so if you took a snapshot if
[TS]
00:58:08
◼
►
you took if you made a clone right now
[TS]
00:58:10
◼
►
what you essentially have our two file
[TS]
00:58:13
◼
►
systems that look exactly identical and
[TS]
00:58:15
◼
►
you can go into one of them and start
[TS]
00:58:16
◼
►
messing with stuff of course the other
[TS]
00:58:18
◼
►
one you know your main one also
[TS]
00:58:19
◼
►
continues to go along and they start to
[TS]
00:58:21
◼
►
diverge from each other this is all
[TS]
00:58:23
◼
►
efficient because they share all the
[TS]
00:58:25
◼
►
blocks in this because they have on
[TS]
00:58:27
◼
►
count in common likes when you're making
[TS]
00:58:28
◼
►
a snapshot all the disks are in common
[TS]
00:58:30
◼
►
and then as time goes on something
[TS]
00:58:32
◼
►
changes and what it does is okay well
[TS]
00:58:35
◼
►
you know the same thing that always does
[TS]
00:58:36
◼
►
someone wants to make a change this
[TS]
00:58:37
◼
►
right the new version of it over there
[TS]
00:58:39
◼
►
and to leave the old version over there
[TS]
00:58:41
◼
►
because that's part of a snapshot so the
[TS]
00:58:43
◼
►
the two resulting logical file system
[TS]
00:58:47
◼
►
slowly diverged as as that more blocks
[TS]
00:58:49
◼
►
changed as they differ snapshots don't
[TS]
00:58:51
◼
►
let you modify that moment in time image
[TS]
00:58:54
◼
►
of the thing but clones say just make it
[TS]
00:58:57
◼
►
you know make a note here that this was
[TS]
00:58:59
◼
►
a moment in time and now future changes
[TS]
00:59:01
◼
►
to this clone should be separate from
[TS]
00:59:02
◼
►
the future changes to the operating
[TS]
00:59:03
◼
►
system that it was clone as if until the
[TS]
00:59:05
◼
►
operation to the file system that it was
[TS]
00:59:06
◼
►
cloned from these are two very powerful
[TS]
00:59:11
◼
►
and very interesting technologies that
[TS]
00:59:14
◼
►
I'm sure people who have never heard of
[TS]
00:59:15
◼
►
them can think of many possible uses for
[TS]
00:59:16
◼
►
them already but the fact that they are
[TS]
00:59:19
◼
►
not giant copy operations and don't
[TS]
00:59:21
◼
►
scale with the size of the file system
[TS]
00:59:23
◼
►
is key the number of snapshots you can
[TS]
00:59:26
◼
►
have on ZFS is supposedly unlimited but
[TS]
00:59:30
◼
►
as you can imagine if you keeps taking
[TS]
00:59:32
◼
►
snapshots what you're saying is the
[TS]
00:59:34
◼
►
blocks used
[TS]
00:59:35
◼
►
by the data currently on the disk can
[TS]
00:59:36
◼
►
never be free eventually you'll fill
[TS]
00:59:38
◼
►
your disk because you're you're telling
[TS]
00:59:41
◼
►
it you can't delete this old stuff even
[TS]
00:59:43
◼
►
if like so you take a snapshot then you
[TS]
00:59:44
◼
►
delete a 1 gigabyte file off your disk
[TS]
00:59:46
◼
►
well it can't actually give you one 2
[TS]
00:59:48
◼
►
gigabyte of free space left because that
[TS]
00:59:50
◼
►
gigabyte file has still exist in the
[TS]
00:59:52
◼
►
snapshot so that will disappear from
[TS]
00:59:53
◼
►
your current disk but if you were to
[TS]
00:59:55
◼
►
look back in the snapshot it would still
[TS]
00:59:56
◼
►
be there so eventually you will fill
[TS]
00:59:58
◼
►
your entire disk by taking snapshots you
[TS]
00:59:59
◼
►
can course
[TS]
00:59:59
◼
►
can course
[TS]
01:00:00
◼
►
trim old snapshots off the end and say
[TS]
01:00:02
◼
►
okay this snapshot I'm done with it you
[TS]
01:00:03
◼
►
can free up all the blocks there or
[TS]
01:00:04
◼
►
whatever but the whole point of all this
[TS]
01:00:05
◼
►
is is that it happens very very quickly
[TS]
01:00:08
◼
►
basically instantaneously which is a far
[TS]
01:00:11
◼
►
cry from how long it takes to do a
[TS]
01:00:12
◼
►
super-duper backup or a Time Machine
[TS]
01:00:14
◼
►
backup or anything like that the second
[TS]
01:00:17
◼
►
related feature is sending and receiving
[TS]
01:00:20
◼
►
block level deltas between snapshots
[TS]
01:00:24
◼
►
this is where you can say okay I've got
[TS]
01:00:28
◼
►
a snapshot over here and I've got a
[TS]
01:00:30
◼
►
snapshot over there what is it is
[TS]
01:00:33
◼
►
different between those two things find
[TS]
01:00:35
◼
►
not the files that are different but
[TS]
01:00:38
◼
►
find the individual blocks on disk that
[TS]
01:00:40
◼
►
are different between snapshot a and
[TS]
01:00:42
◼
►
snapshot B and send them from snapshot a
[TS]
01:00:44
◼
►
snapshot B to make B match up with a now
[TS]
01:00:50
◼
►
this is should bring to mind a backup
[TS]
01:00:53
◼
►
type of strategy incremental backup
[TS]
01:00:54
◼
►
strategy and it's a big contrast with
[TS]
01:00:57
◼
►
the way time machine works this is a
[TS]
01:00:59
◼
►
review of some of the stuff they wrote
[TS]
01:01:01
◼
►
about in the leopard review and time
[TS]
01:01:03
◼
►
machine was introduced the way time
[TS]
01:01:05
◼
►
machine works is it also has to send the
[TS]
01:01:09
◼
►
differences between the last time you
[TS]
01:01:10
◼
►
backed up and the current state to your
[TS]
01:01:12
◼
►
time machine drive so if you run time
[TS]
01:01:13
◼
►
between the first time it copies
[TS]
01:01:15
◼
►
everything to a second Drive right the
[TS]
01:01:17
◼
►
second time you run it you don't want it
[TS]
01:01:19
◼
►
to copy everything again you just wanted
[TS]
01:01:20
◼
►
to say what has changed since the last
[TS]
01:01:21
◼
►
time you did a Time Machine backup and
[TS]
01:01:25
◼
►
then write those changes to the Time
[TS]
01:01:26
◼
►
Machine backup so the first backup takes
[TS]
01:01:29
◼
►
like hours and the second backup takes
[TS]
01:01:30
◼
►
maybe five minutes ah the tricky bit is
[TS]
01:01:34
◼
►
how do you tell what has changed since
[TS]
01:01:36
◼
►
the last time you made a backup in the
[TS]
01:01:39
◼
►
in Mac OS 10 and time machine what Mac
[TS]
01:01:41
◼
►
OS 10 does is anytime anything makes a
[TS]
01:01:44
◼
►
change to your disk it writes a little
[TS]
01:01:47
◼
►
log of it there's a mechanism called FS
[TS]
01:01:48
◼
►
events that maintains this highly
[TS]
01:01:51
◼
►
compressed log that tries to coalesce
[TS]
01:01:53
◼
►
multiple updates and all sorts of other
[TS]
01:01:55
◼
►
things to try to make it so it's not
[TS]
01:01:56
◼
►
filling your disk but right now as
[TS]
01:01:58
◼
►
you're if you're sitting here on your
[TS]
01:01:59
◼
►
computer or your Mac is doing stuff at
[TS]
01:02:01
◼
►
home anytime something happens to the
[TS]
01:02:04
◼
►
file system the operating system is
[TS]
01:02:05
◼
►
writing to a little log file of what
[TS]
01:02:08
◼
►
happened to the file system at a file
[TS]
01:02:11
◼
►
granularity so it's going to say this
[TS]
01:02:12
◼
►
file change
[TS]
01:02:13
◼
►
file was deleted this file was created
[TS]
01:02:18
◼
►
when Time Machine runs it reads it keeps
[TS]
01:02:22
◼
►
track of where it wasn't that log last
[TS]
01:02:23
◼
►
time so it says I did a time machine
[TS]
01:02:25
◼
►
back up and I did all the updates up to
[TS]
01:02:27
◼
►
file system event number 1 2 3 so I'm
[TS]
01:02:29
◼
►
going to start from file since event
[TS]
01:02:31
◼
►
number 1 2 4 and it says this file was
[TS]
01:02:33
◼
►
deleted ok so I know that's the change
[TS]
01:02:34
◼
►
you have to make in the back and it said
[TS]
01:02:36
◼
►
this file was modified ok so I've got to
[TS]
01:02:37
◼
►
grab the copy that file put it over
[TS]
01:02:38
◼
►
there and says this file was deleted so
[TS]
01:02:40
◼
►
you know it can go back go through the
[TS]
01:02:43
◼
►
file system event log and find the
[TS]
01:02:46
◼
►
things that have changed and make the
[TS]
01:02:47
◼
►
new backup with them when it makes the
[TS]
01:02:49
◼
►
backup it doesn't make it does use as
[TS]
01:02:52
◼
►
hard links on the target destination to
[TS]
01:02:54
◼
►
say all right so everything is exactly
[TS]
01:02:56
◼
►
the same as the last backup except this
[TS]
01:02:59
◼
►
one document change so it makes hard
[TS]
01:03:01
◼
►
links to all of the rest of the disk
[TS]
01:03:03
◼
►
except for the directory that has that
[TS]
01:03:06
◼
►
one changed file in it and then it makes
[TS]
01:03:07
◼
►
hard links to all the files in that
[TS]
01:03:09
◼
►
directory except for the one file to
[TS]
01:03:10
◼
►
change and then finally it copies the
[TS]
01:03:12
◼
►
one file to changed over to the
[TS]
01:03:13
◼
►
time-machine disk so it doesn't have to
[TS]
01:03:19
◼
►
have to complete copies every date it's
[TS]
01:03:20
◼
►
got one copy of all your data plus two
[TS]
01:03:22
◼
►
copies of that one file that changed you
[TS]
01:03:25
◼
►
can see this is kind of a very different
[TS]
01:03:26
◼
►
way to do what copy and write does it a
[TS]
01:03:28
◼
►
block level in something like ZFS the
[TS]
01:03:32
◼
►
disadvantage is that many people use
[TS]
01:03:35
◼
►
time as you know if you have a big file
[TS]
01:03:37
◼
►
like a 2 gigabyte mail database and you
[TS]
01:03:40
◼
►
get a single new piece of email and it
[TS]
01:03:41
◼
►
modifies your 2 gigabyte mail database
[TS]
01:03:43
◼
►
file the next time time machine runs is
[TS]
01:03:47
◼
►
going to see a file system event that
[TS]
01:03:48
◼
►
says aw since the last time I ran the
[TS]
01:03:50
◼
►
mail database has changed and then it's
[TS]
01:03:53
◼
►
going to copy the entire 2 gigabyte mail
[TS]
01:03:55
◼
►
database all 2 gigabytes of it over to
[TS]
01:03:58
◼
►
the time machine disk because that's the
[TS]
01:04:00
◼
►
only thing it can do it's got the old
[TS]
01:04:01
◼
►
version of the 2 gigabyte mail database
[TS]
01:04:03
◼
►
on the time machine disk and now there's
[TS]
01:04:05
◼
►
a new version it's got to copy the
[TS]
01:04:07
◼
►
entire version over there if you have
[TS]
01:04:09
◼
►
any large files that change frequently
[TS]
01:04:10
◼
►
your time machine backups are going to
[TS]
01:04:13
◼
►
be humongous you're going to be doing
[TS]
01:04:14
◼
►
gigs and gigs of i/o when may be only a
[TS]
01:04:16
◼
►
few kilobytes changed because it works
[TS]
01:04:18
◼
►
at the file level the FS immense
[TS]
01:04:21
◼
►
mechanism works at the file level and
[TS]
01:04:23
◼
►
time machine works at the file level
[TS]
01:04:24
◼
►
this is why mail programs that used to
[TS]
01:04:26
◼
►
have 2k by database
[TS]
01:04:27
◼
►
have since been changed to use thousands
[TS]
01:04:29
◼
►
and thousands of little tiny files
[TS]
01:04:30
◼
►
because when a little tiny file changes
[TS]
01:04:32
◼
►
just a little file has to be copied not
[TS]
01:04:34
◼
►
the entire file but there are still
[TS]
01:04:35
◼
►
large files that are modified fairly
[TS]
01:04:37
◼
►
frequently and just so wasteful to have
[TS]
01:04:39
◼
►
to you know I add I add two three words
[TS]
01:04:41
◼
►
to the end of this big Word document so
[TS]
01:04:42
◼
►
I got to copy the two megabyte word
[TS]
01:04:44
◼
►
document again if that happens over and
[TS]
01:04:46
◼
►
over again you're filling your backup
[TS]
01:04:47
◼
►
disk way fat way faster than you think
[TS]
01:04:49
◼
►
you should uh and you're doing a lot
[TS]
01:04:52
◼
►
more i/o you know you're copying tons
[TS]
01:04:55
◼
►
and tons of stuff uh you know from one
[TS]
01:04:57
◼
►
place to the other so everything takes
[TS]
01:04:58
◼
►
longer now this this mechanism of
[TS]
01:05:01
◼
►
figuring out what has changed through
[TS]
01:05:05
◼
►
the file system the vent thing this was
[TS]
01:05:07
◼
►
introduced uh I believe was introduced
[TS]
01:05:09
◼
►
when spotlight was introduced because
[TS]
01:05:10
◼
►
spotlight uses the same thing spotlight
[TS]
01:05:12
◼
►
is the thing that indexes all the files
[TS]
01:05:14
◼
►
on your just so you can search them and
[TS]
01:05:16
◼
►
doesn't just index the file names it
[TS]
01:05:17
◼
►
also indexes the file contents so
[TS]
01:05:20
◼
►
anytime something happens on your disk
[TS]
01:05:21
◼
►
in a file is written the spotlight
[TS]
01:05:24
◼
►
daemon else on the spotlight demo one of
[TS]
01:05:26
◼
►
the daemons related to spotlight is
[TS]
01:05:28
◼
►
listening in on that file system event
[TS]
01:05:30
◼
►
stream listening for every single thing
[TS]
01:05:32
◼
►
that happens on your disk and when
[TS]
01:05:34
◼
►
something happens it goes AHA a file has
[TS]
01:05:36
◼
►
been modified or created or deleted I
[TS]
01:05:38
◼
►
have to do something so say a file was
[TS]
01:05:39
◼
►
created says up new file is created and
[TS]
01:05:41
◼
►
it's notified in real time when that
[TS]
01:05:42
◼
►
happens and it says well I gotta go
[TS]
01:05:44
◼
►
index that file so it's six it's little
[TS]
01:05:45
◼
►
index around that file and the index R
[TS]
01:05:47
◼
►
reads some portion of the file and
[TS]
01:05:48
◼
►
updates his index of stuff and says okay
[TS]
01:05:50
◼
►
I read this file and I index and it's in
[TS]
01:05:52
◼
►
there same thing when a file is deleted
[TS]
01:05:53
◼
►
so this file was deleted I got to remove
[TS]
01:05:55
◼
►
that file from my index so when I search
[TS]
01:05:56
◼
►
for it later they don't find it because
[TS]
01:05:57
◼
►
it's gone when this mechanism is reduced
[TS]
01:06:01
◼
►
this firehose of file system events
[TS]
01:06:04
◼
►
real-time streams of what's happening in
[TS]
01:06:07
◼
►
the file system was only available to
[TS]
01:06:10
◼
►
selected apple processes so the
[TS]
01:06:13
◼
►
spotlight could do it and a few other
[TS]
01:06:15
◼
►
things we're listening on the the
[TS]
01:06:16
◼
►
firehose of file system events and the
[TS]
01:06:19
◼
►
reason it was limited to only a few
[TS]
01:06:22
◼
►
listeners was because this is all
[TS]
01:06:27
◼
►
happening in the kernel of the operating
[TS]
01:06:28
◼
►
system it's the only way to catch all I
[TS]
01:06:30
◼
►
owe that happens to a disk is to talk
[TS]
01:06:31
◼
►
into the kernel the file systems in that
[TS]
01:06:33
◼
►
magazine was hooking to the crown so
[TS]
01:06:34
◼
►
anytime any i/o happened it could go
[TS]
01:06:36
◼
►
through this list of people who are
[TS]
01:06:37
◼
►
interested hey is anybody listening for
[TS]
01:06:39
◼
►
files as events I got tell them this
[TS]
01:06:40
◼
►
happen Hey
[TS]
01:06:41
◼
►
this file was created oh hey this file
[TS]
01:06:43
◼
►
was deleted hey this file was modified
[TS]
01:06:44
◼
►
things that happen inside the kernel
[TS]
01:06:47
◼
►
first of all things that happen inside
[TS]
01:06:49
◼
►
the kernel tend not to maybe able to be
[TS]
01:06:52
◼
►
swapped out to disk for what I hope are
[TS]
01:06:55
◼
►
obvious reasons because the kernels
[TS]
01:06:56
◼
►
where you implement the swap stuff so if
[TS]
01:06:58
◼
►
for example the code that swaps virtual
[TS]
01:07:01
◼
►
memory to disk is swapped to disk and
[TS]
01:07:03
◼
►
you need it to get the stuff off disk
[TS]
01:07:05
◼
►
you're in a bad situation
[TS]
01:07:06
◼
►
so most kernel memories wire down wire
[TS]
01:07:08
◼
►
down means that it can't be swapped disk
[TS]
01:07:10
◼
►
and the kernel has buffers for storing
[TS]
01:07:14
◼
►
like messages that it's going to send
[TS]
01:07:15
◼
►
and most of those buffers are fixed in
[TS]
01:07:16
◼
►
size and small because that you know
[TS]
01:07:18
◼
►
growing memory and in the kernel is
[TS]
01:07:20
◼
►
another thing that tends to be frowned
[TS]
01:07:22
◼
►
upon you want a bunch of small fixed
[TS]
01:07:24
◼
►
size buffers so when you're sending
[TS]
01:07:27
◼
►
messages to these things that are
[TS]
01:07:30
◼
►
listening for filesystem events you've
[TS]
01:07:32
◼
►
got a window of time when things have to
[TS]
01:07:35
◼
►
the kernels got to put the notification
[TS]
01:07:36
◼
►
in in some buffer queue for say okay by
[TS]
01:07:39
◼
►
the way spotlight thing you want to know
[TS]
01:07:41
◼
►
when something happens something
[TS]
01:07:41
◼
►
happened well say tons of things are
[TS]
01:07:44
◼
►
happening really really fast like 100
[TS]
01:07:46
◼
►
files are created as fast as you
[TS]
01:07:48
◼
►
possibly can the thing listening for
[TS]
01:07:50
◼
►
filesystem events has a responsibility
[TS]
01:07:52
◼
►
to consume those events to pull them off
[TS]
01:07:55
◼
►
the queue and do something with them at
[TS]
01:07:56
◼
►
a speed that's close to the speed that
[TS]
01:08:00
◼
►
they're being filled in otherwise the
[TS]
01:08:02
◼
►
buffer is going to get full and what
[TS]
01:08:03
◼
►
happens when the buffer is full like oh
[TS]
01:08:05
◼
►
it's it's like the Lucy with the
[TS]
01:08:06
◼
►
assembly line chocolates thing right
[TS]
01:08:09
◼
►
what episode of ice from I Love Lucy I
[TS]
01:08:11
◼
►
don't know there's the one where she
[TS]
01:08:12
◼
►
works in a chocolate factory in the
[TS]
01:08:14
◼
►
chocolates are coming out faster than
[TS]
01:08:15
◼
►
she can box him up yeah she was also
[TS]
01:08:17
◼
►
funny she's she's the consumer in this
[TS]
01:08:19
◼
►
she's supposed to be putting them in
[TS]
01:08:20
◼
►
boxes and putting away but it's the
[TS]
01:08:22
◼
►
producer at the chocolates cannot coming
[TS]
01:08:24
◼
►
down the assembly line too fast you know
[TS]
01:08:26
◼
►
what happens is the chocolates get
[TS]
01:08:28
◼
►
dropped on the floor so that can happen
[TS]
01:08:31
◼
►
with file system event consumers if the
[TS]
01:08:33
◼
►
consumers are not pulling the events off
[TS]
01:08:36
◼
►
the queue as fast as they can are
[TS]
01:08:37
◼
►
they're coming in they will end up
[TS]
01:08:40
◼
►
missing events and the whole point of
[TS]
01:08:41
◼
►
this mechanism is not to miss any I have
[TS]
01:08:45
◼
►
to know everything that happened so
[TS]
01:08:46
◼
►
imagine for for the thing that writes
[TS]
01:08:48
◼
►
the log of things that happen that's the
[TS]
01:08:50
◼
►
whole point is it has to make a note of
[TS]
01:08:52
◼
►
everything that happened and it really
[TS]
01:08:55
◼
►
an event because then say files have
[TS]
01:08:58
◼
►
been created really really fast and
[TS]
01:08:59
◼
►
things like I'm alright I'm keeping up
[TS]
01:09:01
◼
►
on pulling these events off the queue
[TS]
01:09:02
◼
►
I'm keeping track of stuff I'm it would
[TS]
01:09:04
◼
►
consolidate events to say like this if
[TS]
01:09:05
◼
►
this file was changed 17 times in
[TS]
01:09:07
◼
►
sequence the event log just needs to
[TS]
01:09:09
◼
►
know the file was changed doesn't need
[TS]
01:09:10
◼
►
to know how many times it was changed so
[TS]
01:09:11
◼
►
we consolidate all those 17 changes into
[TS]
01:09:14
◼
►
a single change event but eventually
[TS]
01:09:15
◼
►
it's got to write out to its little
[TS]
01:09:16
◼
►
compressed log file and disk this file
[TS]
01:09:18
◼
►
change and it's got to do that fast
[TS]
01:09:20
◼
►
enough that it doesn't get overwhelmed
[TS]
01:09:21
◼
►
by the events that are coming in because
[TS]
01:09:22
◼
►
if the kernel can't put another event on
[TS]
01:09:24
◼
►
the queue for this listener
[TS]
01:09:25
◼
►
it's going to send out a message and say
[TS]
01:09:27
◼
►
look I had another event for you but
[TS]
01:09:28
◼
►
there's no place to put it your queue is
[TS]
01:09:30
◼
►
full I can't put it in your queue if I
[TS]
01:09:32
◼
►
did that have to delete one of the
[TS]
01:09:33
◼
►
things that's there so I'm just going to
[TS]
01:09:34
◼
►
send you a message it says dude you
[TS]
01:09:36
◼
►
didn't keep up you missed an event sorry
[TS]
01:09:38
◼
►
about that
[TS]
01:09:39
◼
►
if that happens the next time Time
[TS]
01:09:41
◼
►
Machine runs it may not know about some
[TS]
01:09:43
◼
►
file has been modified and then when you
[TS]
01:09:44
◼
►
disk goes bad and you restore from your
[TS]
01:09:46
◼
►
time machine back up you're like wait
[TS]
01:09:47
◼
►
where's that file and if it's not there
[TS]
01:09:49
◼
►
that's bad so there are certain
[TS]
01:09:52
◼
►
constraints especially we're backup
[TS]
01:09:54
◼
►
software but even for something like
[TS]
01:09:55
◼
►
spotlight where like say you make a new
[TS]
01:09:57
◼
►
file and something couldn't keep up and
[TS]
01:09:59
◼
►
you go searching for it and you can't
[TS]
01:10:00
◼
►
find it it's never going to get into the
[TS]
01:10:01
◼
►
index because nobody knows that you know
[TS]
01:10:03
◼
►
all you know all I can do is send to the
[TS]
01:10:05
◼
►
the process you missed an event what is
[TS]
01:10:08
◼
►
the recourse that time machine and
[TS]
01:10:10
◼
►
spotlight have if they miss an event
[TS]
01:10:13
◼
►
they the alternative strategy is really
[TS]
01:10:17
◼
►
really bad because like our so I missed
[TS]
01:10:19
◼
►
an event something happened and I don't
[TS]
01:10:20
◼
►
know about the kernel is never going to
[TS]
01:10:21
◼
►
tell me again because it's long since
[TS]
01:10:23
◼
►
forgotten about that and moved on to
[TS]
01:10:24
◼
►
other things and I don't know what
[TS]
01:10:26
◼
►
happened maybe a really important file
[TS]
01:10:28
◼
►
was modified or deleted or created or
[TS]
01:10:30
◼
►
something and if I can't add to remove
[TS]
01:10:32
◼
►
it to my index and I can't put it in my
[TS]
01:10:35
◼
►
logs at a time machine knows to copy it
[TS]
01:10:36
◼
►
to another disk we've got a bad
[TS]
01:10:38
◼
►
situation here so what most of those
[TS]
01:10:39
◼
►
programs do in response to you missed an
[TS]
01:10:41
◼
►
event is to say oh I guess I got to scan
[TS]
01:10:44
◼
►
the whole disk again from top to bottom
[TS]
01:10:46
◼
►
maybe you've seen this if you do
[TS]
01:10:49
◼
►
something that angers either Time
[TS]
01:10:50
◼
►
Machine your spotlight where you log in
[TS]
01:10:52
◼
►
and spotlight says it's indexing your
[TS]
01:10:54
◼
►
disk again it's got to read every single
[TS]
01:10:57
◼
►
file in every single directory starting
[TS]
01:11:00
◼
►
from the beginning right now so it's
[TS]
01:11:02
◼
►
gotta say forget it I'm totally screwed
[TS]
01:11:04
◼
►
up I can do everything over again
[TS]
01:11:05
◼
►
re-indexing with spotlight a one
[TS]
01:11:07
◼
►
terabyte disk gets filled or
[TS]
01:11:09
◼
►
are doing a brand-new time machine back
[TS]
01:11:10
◼
►
up from the beginning and figuring out
[TS]
01:11:11
◼
►
on a file-by-file basis is this file
[TS]
01:11:13
◼
►
change no is this file change now it
[TS]
01:11:15
◼
►
takes forever and grinds your disk to
[TS]
01:11:17
◼
►
this is all very very bad so that's why
[TS]
01:11:23
◼
►
in when this mechanism introduced the
[TS]
01:11:26
◼
►
public interface for applications was
[TS]
01:11:29
◼
►
are you can't drink from the fire hose
[TS]
01:11:30
◼
►
because you can't be held responsible
[TS]
01:11:32
◼
►
for being able to keep up with the
[TS]
01:11:33
◼
►
stream of stuff and furthermore if we
[TS]
01:11:35
◼
►
have too many listeners listening for
[TS]
01:11:36
◼
►
every single filesystem event that's
[TS]
01:11:38
◼
►
happening we're going to have to slow
[TS]
01:11:39
◼
►
down and we might not have enough kernel
[TS]
01:11:41
◼
►
buffers for them and it's just you know
[TS]
01:11:43
◼
►
this is not for you don't touch us but
[TS]
01:11:45
◼
►
we'll have a public interface that will
[TS]
01:11:48
◼
►
give you a much lower granularity of
[TS]
01:11:51
◼
►
updates instead of telling you any every
[TS]
01:11:53
◼
►
time something changes all we're going
[TS]
01:11:55
◼
►
to tell you is something changed in this
[TS]
01:11:58
◼
►
directory and we're not going to tell
[TS]
01:11:59
◼
►
you what it was and those events can
[TS]
01:12:01
◼
►
come kind of in a leisurely manner so if
[TS]
01:12:03
◼
►
there's some huge amount of filesystem
[TS]
01:12:04
◼
►
activity going on your application using
[TS]
01:12:08
◼
►
this API is only going to find out about
[TS]
01:12:10
◼
►
it perhaps after a whole bunch of stuff
[TS]
01:12:11
◼
►
has changed and it's just and all you're
[TS]
01:12:13
◼
►
gonna get is something changed in this
[TS]
01:12:15
◼
►
directory and what happened I don't know
[TS]
01:12:18
◼
►
that's not up to us so that is a much
[TS]
01:12:20
◼
►
lower granularity of event then this
[TS]
01:12:23
◼
►
file was deleted this file was created
[TS]
01:12:24
◼
►
this file was modified this file was
[TS]
01:12:26
◼
►
deleted you know that type of thing and
[TS]
01:12:27
◼
►
that was the public interface to file
[TS]
01:12:31
◼
►
system events now and time machine can
[TS]
01:12:35
◼
►
consume that as well because but what
[TS]
01:12:37
◼
►
that means is that what you get an event
[TS]
01:12:38
◼
►
that says something changed in this
[TS]
01:12:39
◼
►
directory you have to have a way to
[TS]
01:12:41
◼
►
figure out all right well what changed
[TS]
01:12:43
◼
►
one of the ways you could figure it out
[TS]
01:12:45
◼
►
for example if your time machine is they
[TS]
01:12:46
◼
►
could say something change in this
[TS]
01:12:48
◼
►
directory all right well I've got a
[TS]
01:12:50
◼
►
backup copy of that directory why don't
[TS]
01:12:52
◼
►
I read that the entire content of that
[TS]
01:12:54
◼
►
directory and compare it to the current
[TS]
01:12:56
◼
►
contents and find the differences this
[TS]
01:12:59
◼
►
is something similar to what and user
[TS]
01:13:01
◼
►
programs do when they get a notification
[TS]
01:13:03
◼
►
it's up to the program to decide like if
[TS]
01:13:06
◼
►
you're interested in changes in this
[TS]
01:13:07
◼
►
directory start by reading the contents
[TS]
01:13:09
◼
►
of the directory and then listen and
[TS]
01:13:10
◼
►
will tell you if anything changed and
[TS]
01:13:12
◼
►
when they tell you something change
[TS]
01:13:13
◼
►
reread the contents of the directory and
[TS]
01:13:15
◼
►
compare it to the copy you had in memory
[TS]
01:13:16
◼
►
and see what changed then you can tell
[TS]
01:13:17
◼
►
oh this file is new this file is
[TS]
01:13:19
◼
►
modified you know that's kind of
[TS]
01:13:20
◼
►
annoying and cumbersome or whatever
[TS]
01:13:22
◼
►
but you can do that sort of at your
[TS]
01:13:23
◼
►
leisure without angering the colonel
[TS]
01:13:25
◼
►
who's sending a little chocolates down
[TS]
01:13:26
◼
►
the assembly line and without being
[TS]
01:13:29
◼
►
responsible or pulling chocolates off
[TS]
01:13:31
◼
►
the assembly line fast enough to keep up
[TS]
01:13:32
◼
►
with what's going on with file i/o now
[TS]
01:13:36
◼
►
all this is a very roundabout way to
[TS]
01:13:38
◼
►
talk about how ZFS tackles the same
[TS]
01:13:42
◼
►
problem ZFS doesn't have to have
[TS]
01:13:44
◼
►
something in the kernel that listens to
[TS]
01:13:47
◼
►
file system changes and writes them out
[TS]
01:13:49
◼
►
to a compress log file
[TS]
01:13:50
◼
►
there is no continually growing compress
[TS]
01:13:52
◼
►
log of all the things that have happened
[TS]
01:13:53
◼
►
in a ZFS system and the thing that has
[TS]
01:13:57
◼
►
to send the difference between one
[TS]
01:13:58
◼
►
snapshot and another doesn't read a big
[TS]
01:14:01
◼
►
log of the things that happen the file
[TS]
01:14:02
◼
►
system itself is essentially a log of
[TS]
01:14:04
◼
►
all the things that it happened because
[TS]
01:14:06
◼
►
it doesn't overwrite data it only writes
[TS]
01:14:08
◼
►
data to new location so it's basically
[TS]
01:14:10
◼
►
got a long stream of new data just being
[TS]
01:14:14
◼
►
added and added and added and then being
[TS]
01:14:16
◼
►
reaped off the back when it's no longer
[TS]
01:14:18
◼
►
in use so the thing that has to find the
[TS]
01:14:21
◼
►
the differences between one snapshot and
[TS]
01:14:23
◼
►
another first of all it doesn't have to
[TS]
01:14:24
◼
►
do with the file level because that's
[TS]
01:14:25
◼
►
not how the file system works all the
[TS]
01:14:27
◼
►
i/o is at a block level so if you change
[TS]
01:14:29
◼
►
three bytes inside a two gigabyte file
[TS]
01:14:32
◼
►
you're going to have it in ZFS those
[TS]
01:14:34
◼
►
three bytes written to a new location
[TS]
01:14:36
◼
►
the old three bytes in an old location
[TS]
01:14:38
◼
►
and you'll know since last time I look
[TS]
01:14:43
◼
►
at this or since from one snapshot the
[TS]
01:14:44
◼
►
other one snapshot includes this this
[TS]
01:14:46
◼
►
those three bytes in this block and the
[TS]
01:14:48
◼
►
other snapshot includes those two bytes
[TS]
01:14:49
◼
►
in this block and it can just send those
[TS]
01:14:51
◼
►
bytes from one place to the other it
[TS]
01:14:53
◼
►
doesn't have to send the entire
[TS]
01:14:54
◼
►
two-qubit file it doesn't have to keep
[TS]
01:14:56
◼
►
track of the fact that file change
[TS]
01:14:57
◼
►
because when it sees it that this
[TS]
01:14:59
◼
►
snapshot has one block for this file in
[TS]
01:15:00
◼
►
snapshot has the other block for the
[TS]
01:15:01
◼
►
file everything's check sounds it knows
[TS]
01:15:03
◼
►
the contents of the of the blocks are
[TS]
01:15:04
◼
►
different it knows which one came later
[TS]
01:15:05
◼
►
it doesn't it's sort of like inherent in
[TS]
01:15:08
◼
►
the structure of the file in itself what
[TS]
01:15:11
◼
►
has happened who and what the
[TS]
01:15:13
◼
►
differences are between these things
[TS]
01:15:14
◼
►
it's not instantaneous to figure out
[TS]
01:15:16
◼
►
what the block level dips are but it
[TS]
01:15:19
◼
►
doesn't require scanning all of the
[TS]
01:15:22
◼
►
source and all definition destination
[TS]
01:15:24
◼
►
and comparing them that's one of the
[TS]
01:15:27
◼
►
reasons why this type of strategy long
[TS]
01:15:29
◼
►
ago is called log structured file format
[TS]
01:15:30
◼
►
or does everything is appended to the
[TS]
01:15:32
◼
►
end as a big linear stream of new things
[TS]
01:15:34
◼
►
that have happened
[TS]
01:15:35
◼
►
and snapshotting just really tells it
[TS]
01:15:37
◼
►
which sets of these are relevant to each
[TS]
01:15:39
◼
►
other so this is one of the reasons
[TS]
01:15:44
◼
►
people were excited about ZFS you can
[TS]
01:15:46
◼
►
imagine a time machine you rebuilt on
[TS]
01:15:48
◼
►
top of something like ZFS your time
[TS]
01:15:53
◼
►
machine backups would look like this
[TS]
01:15:54
◼
►
first of all you could do Time Machine
[TS]
01:15:56
◼
►
backups locally now people know about
[TS]
01:16:00
◼
►
Lian know that it has local time machine
[TS]
01:16:02
◼
►
backups too because this is important
[TS]
01:16:03
◼
►
for laptop users which is increasingly
[TS]
01:16:04
◼
►
pretty much a close approximation of Mac
[TS]
01:16:08
◼
►
users because vast majority people by
[TS]
01:16:10
◼
►
Macs are buying laptops and they tend to
[TS]
01:16:12
◼
►
just have one disk so what do you do for
[TS]
01:16:14
◼
►
backups well Apple since their straddle
[TS]
01:16:17
◼
►
with H OS plus just add in another
[TS]
01:16:18
◼
►
mechanism whereby anytime a file is
[TS]
01:16:20
◼
►
saved it writes out it tries to write
[TS]
01:16:22
◼
►
out the byte level dips between that
[TS]
01:16:24
◼
►
file in this whole separate directory
[TS]
01:16:25
◼
►
full of file there everything that
[TS]
01:16:26
◼
►
happens in HFS+ is built on top of the
[TS]
01:16:28
◼
►
filesystem rather being built into it so
[TS]
01:16:30
◼
►
it's another bunch of files and another
[TS]
01:16:32
◼
►
bunch of database files it's like a
[TS]
01:16:34
◼
►
sequel Lite database and little chunks
[TS]
01:16:36
◼
►
of files you know Selway someone saved
[TS]
01:16:38
◼
►
the new version of this file well since
[TS]
01:16:40
◼
►
there are laptop user and they're not
[TS]
01:16:42
◼
►
connected to their time machine disk
[TS]
01:16:43
◼
►
right now make a note of this change and
[TS]
01:16:46
◼
►
figure out which bytes changed since
[TS]
01:16:48
◼
►
last version of this file and write them
[TS]
01:16:50
◼
►
out to the separate directory in a
[TS]
01:16:51
◼
►
separate file it's all in an
[TS]
01:16:52
◼
►
application-level type of thing and it's
[TS]
01:16:54
◼
►
not particularly elegant or nice but
[TS]
01:16:56
◼
►
this is something that they're trying to
[TS]
01:16:58
◼
►
do to protect Mac users who are
[TS]
01:17:01
◼
►
frequently away from a time machine
[TS]
01:17:02
◼
►
drive well if you have ZFS you could
[TS]
01:17:05
◼
►
take snapshots of the entire disk every
[TS]
01:17:06
◼
►
five minutes or every time you save or
[TS]
01:17:09
◼
►
any you know instantaneously at any time
[TS]
01:17:11
◼
►
you wanted they wouldn't require any
[TS]
01:17:13
◼
►
demons listening for things or any
[TS]
01:17:15
◼
►
separate database files or any sequel
[TS]
01:17:17
◼
►
Lite database of different changed
[TS]
01:17:18
◼
►
ranges or any secret directory full of
[TS]
01:17:20
◼
►
chunks of old files with directories
[TS]
01:17:22
◼
►
named vector dates all this stuff all
[TS]
01:17:24
◼
►
that stuff wouldn't have to exist it
[TS]
01:17:25
◼
►
would be inherent in the file system
[TS]
01:17:26
◼
►
itself so it should do a time machine
[TS]
01:17:28
◼
►
back up you would take a snapshot and
[TS]
01:17:30
◼
►
the reason you want to take a snapshot
[TS]
01:17:32
◼
►
is because you want to do a backup as an
[TS]
01:17:34
◼
►
ax point in time that's nothing that
[TS]
01:17:37
◼
►
Time Machine can't do when you start
[TS]
01:17:38
◼
►
doing your time machine backup you might
[TS]
01:17:40
◼
►
realize as you're using a computer that
[TS]
01:17:41
◼
►
by the time you finish doing your time
[TS]
01:17:43
◼
►
machine back up the disk is changed so
[TS]
01:17:45
◼
►
what what is the time machine backup
[TS]
01:17:47
◼
►
right is it a backup as of the time
[TS]
01:17:49
◼
►
it started or as at the time it ended
[TS]
01:17:50
◼
►
it's kind of a melange of all of them
[TS]
01:17:52
◼
►
combined like if if you're editing a
[TS]
01:17:55
◼
►
file and you see the little time machine
[TS]
01:17:56
◼
►
spinning thing you know it's backing up
[TS]
01:17:58
◼
►
right now and you hit save you have no
[TS]
01:18:00
◼
►
idea what the version that of that thing
[TS]
01:18:02
◼
►
got saved in fact what time machine will
[TS]
01:18:03
◼
►
do is after it's done running it will
[TS]
01:18:04
◼
►
quickly see all right while I was
[TS]
01:18:06
◼
►
running it anything happen and it will
[TS]
01:18:07
◼
►
run again and it only does that leg once
[TS]
01:18:09
◼
►
or twice and tries to sort of catch up
[TS]
01:18:11
◼
►
but it's not a point in time of anything
[TS]
01:18:13
◼
►
it's just kind of a mixture of different
[TS]
01:18:14
◼
►
of different things so if you had ZFS
[TS]
01:18:18
◼
►
you would take a snapshot and say look
[TS]
01:18:19
◼
►
I've got a completely consistent point
[TS]
01:18:21
◼
►
in time snapshot instantaneously this is
[TS]
01:18:23
◼
►
about the context of the disk was then
[TS]
01:18:25
◼
►
you can make a clone a writable snapshot
[TS]
01:18:28
◼
►
of that on the backup disk or you know
[TS]
01:18:31
◼
►
in place wherever you want to do it and
[TS]
01:18:32
◼
►
then you could send the block level
[TS]
01:18:33
◼
►
diffs between the snapshot in the clone
[TS]
01:18:35
◼
►
any time something changes so you would
[TS]
01:18:37
◼
►
have on the backup disk a series a
[TS]
01:18:39
◼
►
series of yeah they have to be right up
[TS]
01:18:42
◼
►
because you have to send the block level
[TS]
01:18:43
◼
►
disk you would have a series of clones
[TS]
01:18:45
◼
►
that you send the block level dips to
[TS]
01:18:46
◼
►
and to figure out what has changed this
[TS]
01:18:48
◼
►
last time you don't have to read some
[TS]
01:18:50
◼
►
big log of stuff or anything like that
[TS]
01:18:51
◼
►
and if a two gigabyte file has changed
[TS]
01:18:53
◼
►
you don't have to send the entire two
[TS]
01:18:55
◼
►
gig file you can just change send the
[TS]
01:18:57
◼
►
blocks that have been modified it would
[TS]
01:18:59
◼
►
be vastly more efficient vastly more
[TS]
01:19:01
◼
►
reliable and just the number of neat
[TS]
01:19:04
◼
►
things you could do with a constant time
[TS]
01:19:06
◼
►
snapshots and clones and block little
[TS]
01:19:08
◼
►
easy block level dips is just tremendous
[TS]
01:19:10
◼
►
you might still need a mechanism but
[TS]
01:19:12
◼
►
through which applications can listen
[TS]
01:19:15
◼
►
for file system events and things that
[TS]
01:19:17
◼
►
are changed but then that that suddenly
[TS]
01:19:19
◼
►
takes it off of the path of things like
[TS]
01:19:21
◼
►
backups ah which can't possibly miss
[TS]
01:19:25
◼
►
anything because they don't have to
[TS]
01:19:26
◼
►
worry about anything it's inherent in
[TS]
01:19:27
◼
►
the file system itself there's no way
[TS]
01:19:28
◼
►
they could possibly miss any event
[TS]
01:19:30
◼
►
because there are no events being
[TS]
01:19:32
◼
►
written it's just that's how the file
[TS]
01:19:33
◼
►
system is structured I'm one one more
[TS]
01:19:37
◼
►
final thing I want to talk about it
[TS]
01:19:38
◼
►
there's more things receive us usually
[TS]
01:19:39
◼
►
the ZFS wikipedia pages get a lot of
[TS]
01:19:41
◼
►
stuff deduplication this is sort of an
[TS]
01:19:44
◼
►
Enterprise II feature that ZFS has
[TS]
01:19:46
◼
►
because it's an enterprise a file system
[TS]
01:19:48
◼
►
what this means is that so
[TS]
01:19:50
◼
►
ZFS is basically managing these big
[TS]
01:19:52
◼
►
blobs of data a single large file could
[TS]
01:19:56
◼
►
be made up of lots of variable size
[TS]
01:19:57
◼
►
blobs that all make up the entire piece
[TS]
01:19:59
◼
►
of data and each one of these blobs is
[TS]
01:20:02
◼
►
check sums of
[TS]
01:20:02
◼
►
that's what ZFS does well once it has
[TS]
01:20:04
◼
►
these check sums which are small
[TS]
01:20:05
◼
►
compared to the data you know you could
[TS]
01:20:07
◼
►
have I don't know how big the blocks are
[TS]
01:20:09
◼
►
but like a megabyte 512 kilobytes or
[TS]
01:20:12
◼
►
whatever the checksum itself is like you
[TS]
01:20:16
◼
►
know 256 bits it's very small so given
[TS]
01:20:21
◼
►
that you have all these check sums what
[TS]
01:20:24
◼
►
you can do is when you say you write out
[TS]
01:20:26
◼
►
a 2 megabyte file and then you write out
[TS]
01:20:30
◼
►
another juvett file a week later that
[TS]
01:20:33
◼
►
happens to have the exact same contents
[TS]
01:20:34
◼
►
as that first 2 megabyte file why are
[TS]
01:20:37
◼
►
you storing the exact same 2 megabytes
[TS]
01:20:39
◼
►
in two different places on your disk
[TS]
01:20:41
◼
►
since ZFS checksum both of those 2 mega
[TS]
01:20:44
◼
►
byte blocks say they're in stored in big
[TS]
01:20:46
◼
►
contiguous 2 megabyte block it knows
[TS]
01:20:47
◼
►
that they're the same and what it can do
[TS]
01:20:50
◼
►
is say well we don't need two copies of
[TS]
01:20:52
◼
►
this 2 megabyte file somewhere on disk
[TS]
01:20:54
◼
►
I know these the contents are the same
[TS]
01:20:56
◼
►
because the checksum is matched why
[TS]
01:20:58
◼
►
don't I just get rid of one of them and
[TS]
01:20:59
◼
►
now both of those files are talking to
[TS]
01:21:01
◼
►
the same 2 megabyte block on disk that's
[TS]
01:21:04
◼
►
that's deduplication and it happens at a
[TS]
01:21:06
◼
►
block level not at a file level so if
[TS]
01:21:07
◼
►
you have a 3 gigabyte file and there
[TS]
01:21:09
◼
►
like 1 megabyte regions within them that
[TS]
01:21:11
◼
►
are identical any region that's
[TS]
01:21:13
◼
►
identically when we pulled out so one
[TS]
01:21:15
◼
►
example is say some file format has a
[TS]
01:21:17
◼
►
long header on it it's always identical
[TS]
01:21:20
◼
►
for all files it's just like our
[TS]
01:21:22
◼
►
preamble or PO stamp or something and
[TS]
01:21:24
◼
►
you have hundreds and hundreds of those
[TS]
01:21:25
◼
►
types of files you only have to store
[TS]
01:21:28
◼
►
that preamble or post amble in the file
[TS]
01:21:29
◼
►
format once for all those hundreds of
[TS]
01:21:32
◼
►
files so you can get disk space back by
[TS]
01:21:35
◼
►
finding out which portions of the file
[TS]
01:21:37
◼
►
are the same as portions of other files
[TS]
01:21:39
◼
►
and only storing one of those portions
[TS]
01:21:41
◼
►
this is something that happens sort of
[TS]
01:21:43
◼
►
offline where it doesn't happen
[TS]
01:21:45
◼
►
necessarily in real-time or whatever but
[TS]
01:21:47
◼
►
it's a way that you can say look my disk
[TS]
01:21:48
◼
►
is almost full there any way you can
[TS]
01:21:49
◼
►
give me more space it will find any
[TS]
01:21:51
◼
►
little piece of any file it's the same
[TS]
01:21:52
◼
►
as any other piece of any other little
[TS]
01:21:53
◼
►
file and check out one of them or check
[TS]
01:21:55
◼
►
out all the mix-up for one ah and why
[TS]
01:21:58
◼
►
does this works like what about when
[TS]
01:21:59
◼
►
something needs to modify that again
[TS]
01:22:00
◼
►
well it's copy and write anything you
[TS]
01:22:02
◼
►
want about anything you're always
[TS]
01:22:03
◼
►
writing to a new location this doesn't
[TS]
01:22:04
◼
►
hurt you at all in terms of making your
[TS]
01:22:07
◼
►
data frozen in place or unable to modify
[TS]
01:22:10
◼
►
this is one of the consequences of
[TS]
01:22:12
◼
►
having a file system or you just write
[TS]
01:22:13
◼
►
things out and never overwrite data in
[TS]
01:22:16
◼
►
uh and it's part of the file system so
[TS]
01:22:20
◼
►
if Apple had deduplication as part of
[TS]
01:22:22
◼
►
their file system I I would really not
[TS]
01:22:24
◼
►
like to see them try to add this HFS
[TS]
01:22:25
◼
►
boss but if they had a file so isn't it
[TS]
01:22:26
◼
►
supported this if you just started to
[TS]
01:22:28
◼
►
get full one of the things the operating
[TS]
01:22:30
◼
►
system could do is say ok let me just go
[TS]
01:22:31
◼
►
look for let me just start deduplicating
[TS]
01:22:34
◼
►
blocks and let me find some common
[TS]
01:22:35
◼
►
regions of files and it doesn't have to
[TS]
01:22:37
◼
►
scan every single file to find common
[TS]
01:22:39
◼
►
regions it just has to look at the check
[TS]
01:22:40
◼
►
sums which are very very small compared
[TS]
01:22:42
◼
►
to the file so we're going to say you
[TS]
01:22:43
◼
►
know if it stores all its check sums in
[TS]
01:22:45
◼
►
kind of like a sorted table a checksum
[TS]
01:22:46
◼
►
somewhere they can very quickly find
[TS]
01:22:48
◼
►
check sums are the same and just start
[TS]
01:22:50
◼
►
reaping data and marking it as free
[TS]
01:22:52
◼
►
space because it only needs one copy so
[TS]
01:22:56
◼
►
that's it for my neat features of ZFS
[TS]
01:22:59
◼
►
that HFS+ doesn't have I hope I've
[TS]
01:23:01
◼
►
wetted people's appetites for ZFS
[TS]
01:23:04
◼
►
another cool new file system there's not
[TS]
01:23:06
◼
►
much they can do about it except hope
[TS]
01:23:08
◼
►
wait and hope they can be as
[TS]
01:23:11
◼
►
dissatisfied as I am I put a link in the
[TS]
01:23:14
◼
►
show notes two more links to Jeff bond
[TS]
01:23:17
◼
►
wigs blog about these carpet topics a an
[TS]
01:23:20
◼
►
old ACM queue interview from 2007 with
[TS]
01:23:23
◼
►
Jeff bond wick and a link to the
[TS]
01:23:27
◼
►
original like PowerPoint presentation
[TS]
01:23:30
◼
►
for ZFS it's called ZFS the last word in
[TS]
01:23:34
◼
►
file systems these are all classic
[TS]
01:23:36
◼
►
pieces of literature from ZFS oh and by
[TS]
01:23:38
◼
►
the way on that on the butter FS thing
[TS]
01:23:40
◼
►
that I link to as well there are many
[TS]
01:23:44
◼
►
links to the academic PDF so the
[TS]
01:23:46
◼
►
academic paper is on which is based even
[TS]
01:23:48
◼
►
if you're someone who doesn't ever click
[TS]
01:23:49
◼
►
on links to PDFs of academic papers did
[TS]
01:23:51
◼
►
you expect it to be just horrible and
[TS]
01:23:53
◼
►
dry and impossible to read these are
[TS]
01:23:55
◼
►
surprisingly readable to anybody with
[TS]
01:23:57
◼
►
even a tiny bit of a CS background so I
[TS]
01:23:59
◼
►
encourage you to actually click on the
[TS]
01:24:01
◼
►
PDFs and read the the academic papers
[TS]
01:24:04
◼
►
they're short they're not too
[TS]
01:24:05
◼
►
complicated they're not filled with
[TS]
01:24:06
◼
►
equations that you're not going to
[TS]
01:24:07
◼
►
understand it's pretty basic stuff that
[TS]
01:24:12
◼
►
each oh yeah I was running my iPad 3
[TS]
01:24:16
◼
►
predictions yes of course I've been
[TS]
01:24:20
◼
►
going back and forth in this when I was
[TS]
01:24:22
◼
►
much more sure like two weeks ago but
[TS]
01:24:25
◼
►
now as we get closer I don't know it
[TS]
01:24:28
◼
►
seems like there's there are a few
[TS]
01:24:30
◼
►
of that the rumors are addressing a few
[TS]
01:24:34
◼
►
points the first point is the screen
[TS]
01:24:36
◼
►
everybody seems to agree there will be a
[TS]
01:24:38
◼
►
Retina display there's a second question
[TS]
01:24:40
◼
►
which is will there continue to be a
[TS]
01:24:42
◼
►
previous generation of iPad like the
[TS]
01:24:44
◼
►
iPad 2 along with the new one there is
[TS]
01:24:48
◼
►
the question of price points and and
[TS]
01:24:52
◼
►
then finally I believe there's a
[TS]
01:24:54
◼
►
question of naming conventions will this
[TS]
01:24:56
◼
►
be the iPad 2s the iPad 3 the iPad HD
[TS]
01:24:59
◼
►
there's even more question about yeah so
[TS]
01:25:01
◼
►
those get paid once I'd love to hear all
[TS]
01:25:03
◼
►
of them
[TS]
01:25:04
◼
►
the only thing everyone agrees on is
[TS]
01:25:05
◼
►
Retina display yeah I also agree on that
[TS]
01:25:08
◼
►
I mean we've we've all known this is
[TS]
01:25:10
◼
►
kind of like we all know that the the
[TS]
01:25:11
◼
►
MacBook Pro without an optical drive is
[TS]
01:25:13
◼
►
coming like we know it's coming yeah
[TS]
01:25:15
◼
►
matter of time and now we know the time
[TS]
01:25:16
◼
►
it's that's definitely come okay ah
[TS]
01:25:20
◼
►
I am almost as certain that Apple will
[TS]
01:25:23
◼
►
continue to sell an iPad with a non
[TS]
01:25:25
◼
►
Retina display almost hundred percent
[TS]
01:25:28
◼
►
certain because it just seems crazy to
[TS]
01:25:30
◼
►
me that they wouldn't will it be the new
[TS]
01:25:32
◼
►
iPad or will it be the existing iPad
[TS]
01:25:34
◼
►
with without the Retina display like a
[TS]
01:25:36
◼
►
two versions of the new one come out or
[TS]
01:25:38
◼
►
the one that we currently have today as
[TS]
01:25:40
◼
►
the iPad 2 continues to be sold
[TS]
01:25:41
◼
►
I think they keep selling the old one
[TS]
01:25:43
◼
►
because that I think that the economies
[TS]
01:25:46
◼
►
of scale network well they already have
[TS]
01:25:47
◼
►
the tooling the assembly lines the
[TS]
01:25:49
◼
►
people you know everything ready to make
[TS]
01:25:51
◼
►
those exact things and maybe you stamp
[TS]
01:25:53
◼
►
something different on the back of it
[TS]
01:25:54
◼
►
for branding if they wanted to change it
[TS]
01:25:55
◼
►
but it's the same reason they sell still
[TS]
01:25:56
◼
►
sell the iPhone 4 and the 3GS like once
[TS]
01:25:58
◼
►
you do the investment in making those
[TS]
01:26:00
◼
►
products it's much cheaper just to keep
[TS]
01:26:03
◼
►
making them and if they you know if they
[TS]
01:26:05
◼
►
want to do they could change something
[TS]
01:26:06
◼
►
about the name but I don't even think
[TS]
01:26:07
◼
►
they will I think it will be just be
[TS]
01:26:09
◼
►
exactly identical it'll be the iPad 2 I
[TS]
01:26:13
◼
►
don't think we'll even bother renaming
[TS]
01:26:15
◼
►
it to be like the iPad 3 slow version
[TS]
01:26:17
◼
►
you know because that would just be a
[TS]
01:26:19
◼
►
matter of stamping something different
[TS]
01:26:20
◼
►
on the back of the thing but I think
[TS]
01:26:22
◼
►
they'll just continue to sell the old
[TS]
01:26:23
◼
►
version the other one that I was really
[TS]
01:26:26
◼
►
really sure about and now I'm kind of
[TS]
01:26:28
◼
►
waffling but I'm still mostly sure is no
[TS]
01:26:31
◼
►
LTE I was so sure there would be no LTE
[TS]
01:26:34
◼
►
but ibex I'm reading too many rumor
[TS]
01:26:36
◼
►
sites and it getting into my head I'm
[TS]
01:26:39
◼
►
pretty certain olt that's I feel
[TS]
01:26:41
◼
►
strongly about that I but now
[TS]
01:26:43
◼
►
I have doubts doubts have been so about
[TS]
01:26:45
◼
►
this rumor site so I should sure not
[TS]
01:26:48
◼
►
read them should just stuck to my guns
[TS]
01:26:49
◼
►
and say no you're still saying no LT
[TS]
01:26:51
◼
►
yeah what does the price point at price
[TS]
01:26:55
◼
►
is another thing that I used to be more
[TS]
01:26:57
◼
►
certain of and now I'm doubting I I
[TS]
01:26:59
◼
►
think I used to think and still kind of
[TS]
01:27:02
◼
►
do that Apple at least shouldn't be
[TS]
01:27:05
◼
►
afraid to sell a higher priced model to
[TS]
01:27:09
◼
►
have one model available that is more
[TS]
01:27:11
◼
►
expensive than any of the current models
[TS]
01:27:13
◼
►
available i but now I think that Apple
[TS]
01:27:18
◼
►
is afraid of that I don't think they
[TS]
01:27:19
◼
►
should be I think they should extend in
[TS]
01:27:21
◼
►
both directions I think they should be
[TS]
01:27:23
◼
►
able to have high-end model for people
[TS]
01:27:27
◼
►
who want it and if the high amount is
[TS]
01:27:28
◼
►
like oh it's got 128 gigs of flash and
[TS]
01:27:32
◼
►
the retina display and you know the LTE
[TS]
01:27:35
◼
►
radio because I'm wrong on that or you
[TS]
01:27:37
◼
►
know something like push out in the high
[TS]
01:27:38
◼
►
end but as we get closer I think man
[TS]
01:27:42
◼
►
Apple just really does not want to go in
[TS]
01:27:44
◼
►
that direction the direction I think
[TS]
01:27:46
◼
►
more people can agree on is they're
[TS]
01:27:47
◼
►
going to try to push lower if that means
[TS]
01:27:50
◼
►
a price drop on the iPad - if that means
[TS]
01:27:52
◼
►
you know like whatever that means they
[TS]
01:27:53
◼
►
want to keep pushing down that always
[TS]
01:27:55
◼
►
want to push down push down with the
[TS]
01:27:56
◼
►
iPods until they're so incredibly cheap
[TS]
01:27:59
◼
►
they cost about as much as a case you
[TS]
01:28:00
◼
►
get an iPod shuffle the same prices you
[TS]
01:28:02
◼
►
can get like an iPhone good iPhone case
[TS]
01:28:03
◼
►
all right pushing down down down I think
[TS]
01:28:06
◼
►
the way they push down they're going to
[TS]
01:28:08
◼
►
push down with the iPads the same way
[TS]
01:28:09
◼
►
they would have with the iPhones which
[TS]
01:28:10
◼
►
is selling previous models the real
[TS]
01:28:14
◼
►
question is can Apple afford to sell an
[TS]
01:28:16
◼
►
iPad with a Retina display at the same
[TS]
01:28:20
◼
►
price points as the iPad 2 for the same
[TS]
01:28:23
◼
►
other features so if you take an iPad 2
[TS]
01:28:24
◼
►
that has a certain amount of flash
[TS]
01:28:25
◼
►
memory and it has Wi-Fi and it has 3G
[TS]
01:28:28
◼
►
can you just swap out that display and
[TS]
01:28:29
◼
►
sell it at the same price certainly albo
[TS]
01:28:31
◼
►
can they've got room in their margins to
[TS]
01:28:33
◼
►
sell it with that but if they were going
[TS]
01:28:35
◼
►
to I thought I would have seen more of a
[TS]
01:28:40
◼
►
warning about future margins going as a
[TS]
01:28:42
◼
►
thing for Horus to talk about nothing
[TS]
01:28:44
◼
►
but in the earnings call I would have
[TS]
01:28:47
◼
►
thought that there would have been more
[TS]
01:28:48
◼
►
warnings about our margins are going to
[TS]
01:28:50
◼
►
be lower next quarter so just keep that
[TS]
01:28:51
◼
►
in mind and if you ask them why they
[TS]
01:28:53
◼
►
would say we don't talk about our
[TS]
01:28:54
◼
►
announced products and component
[TS]
01:28:56
◼
►
prices in blah blah blah like they would
[TS]
01:28:57
◼
►
be evasive as they always are but if
[TS]
01:29:01
◼
►
they're going to have the exact same
[TS]
01:29:01
◼
►
price points as the iPad 2 and maintain
[TS]
01:29:03
◼
►
their margins I don't think it's
[TS]
01:29:05
◼
►
possible because the screen just plain
[TS]
01:29:07
◼
►
cost more no matter what kind of
[TS]
01:29:08
◼
►
sweetheart deal they got on these
[TS]
01:29:09
◼
►
screens and I'm sure they got a good one
[TS]
01:29:10
◼
►
it doesn't cost the same as the old
[TS]
01:29:13
◼
►
screen their margins have to go down so
[TS]
01:29:16
◼
►
given that I think they may do some
[TS]
01:29:21
◼
►
fancy mumbo-jumbo by shuffling the other
[TS]
01:29:24
◼
►
features of the things so that the price
[TS]
01:29:26
◼
►
points remain the same but what you're
[TS]
01:29:27
◼
►
getting for the current cost of a 32 gig
[TS]
01:29:30
◼
►
Wi-Fi only iPad isn't is not exactly
[TS]
01:29:34
◼
►
comparable to what you get with the same
[TS]
01:29:37
◼
►
price point a Retina Display iPad this
[TS]
01:29:40
◼
►
is all lots of waffling which is to say
[TS]
01:29:42
◼
►
that it's clear that Apple wants to hit
[TS]
01:29:45
◼
►
exactly the same price points and extend
[TS]
01:29:47
◼
►
down that's the ideal they want exactly
[TS]
01:29:49
◼
►
the same price as the iPod - iPad - but
[TS]
01:29:51
◼
►
now the price range goes lower so if you
[TS]
01:29:53
◼
►
can't afford even the cheapest previous
[TS]
01:29:54
◼
►
iPad now maybe you can because the
[TS]
01:29:56
◼
►
cheapest model is even cheaper and yeah
[TS]
01:29:57
◼
►
maybe it's last year's model I think
[TS]
01:29:59
◼
►
they should extend up but I think
[TS]
01:30:01
◼
►
they're afraid to maybe if they
[TS]
01:30:04
◼
►
introduced one with more with more flash
[TS]
01:30:06
◼
►
like a 128 gig one they might extend up
[TS]
01:30:09
◼
►
but so if I had if you had to pin me
[TS]
01:30:11
◼
►
down I would say same price points and
[TS]
01:30:15
◼
►
the price range extends downward but not
[TS]
01:30:17
◼
►
upward what else do we have the name
[TS]
01:30:20
◼
►
three versus 2's I'm not really
[TS]
01:30:23
◼
►
interested in that because it's not
[TS]
01:30:24
◼
►
going to change the product that's just
[TS]
01:30:26
◼
►
as well you refuse to comment to s3 a
[TS]
01:30:33
◼
►
check those are the ones that are
[TS]
01:30:35
◼
►
floating around today it probably
[TS]
01:30:39
◼
►
depends on if it has a new case ah the
[TS]
01:30:42
◼
►
rumors are that the case is going to be
[TS]
01:30:45
◼
►
slightly thicker if that's the case
[TS]
01:30:47
◼
►
they're going to call three if the case
[TS]
01:30:49
◼
►
is exactly the same that you get away
[TS]
01:30:51
◼
►
with 2s and I think they might do that
[TS]
01:30:53
◼
►
but I'm leaning towards three and a
[TS]
01:30:56
◼
►
different back slightly different back
[TS]
01:30:58
◼
►
camera I'm assuming the camera will be
[TS]
01:31:00
◼
►
improved but I also would not be shocked
[TS]
01:31:02
◼
►
if it wasn't about other people would be
[TS]
01:31:03
◼
►
shocked if it was I know but other
[TS]
01:31:04
◼
►
people would flip out this could be one
[TS]
01:31:05
◼
►
of those ways they maintain the price
[TS]
01:31:07
◼
►
point because that camera that
[TS]
01:31:08
◼
►
piece-of-crap camera in the
[TS]
01:31:09
◼
►
back of the iPad it's got to cost them
[TS]
01:31:11
◼
►
two cents by now and so they said well
[TS]
01:31:13
◼
►
how can we hit the price point that we
[TS]
01:31:15
◼
►
want to hit and how can we not raise
[TS]
01:31:16
◼
►
prices given that we're putting the
[TS]
01:31:17
◼
►
super expensive screen in there well
[TS]
01:31:18
◼
►
keep the same crappy camera ah do you
[TS]
01:31:21
◼
►
think a lot of people use the iPad 2
[TS]
01:31:23
◼
►
cameras for the FaceTime video
[TS]
01:31:26
◼
►
I bet the one in the front gets much
[TS]
01:31:27
◼
►
more use than the one in the back yeah
[TS]
01:31:28
◼
►
but you know we've all seen the people
[TS]
01:31:30
◼
►
holding up the iPads to take pictures of
[TS]
01:31:32
◼
►
stuff it happens everyone is like all
[TS]
01:31:35
◼
►
that now they can put in the iPhone 4
[TS]
01:31:37
◼
►
camera in there if not the 4s camera
[TS]
01:31:38
◼
►
you're right they could but will they
[TS]
01:31:40
◼
►
Adam I'm I doubt that a lot the CPU a 6
[TS]
01:31:45
◼
►
verses a improved variant of the a5 I'm
[TS]
01:31:48
◼
►
leaning pretty heavily towards the
[TS]
01:31:50
◼
►
variant of the a5 which means a
[TS]
01:31:53
◼
►
dual-core chip instead of quad-core I
[TS]
01:31:54
◼
►
don't think the a6 is ready yet and I
[TS]
01:31:57
◼
►
think the a5 with a better GPU and
[TS]
01:31:58
◼
►
whatever in their hands as they need for
[TS]
01:32:00
◼
►
the big honkin screen will be okay and
[TS]
01:32:02
◼
►
some people have said that even the a5
[TS]
01:32:03
◼
►
could handle a Retina display as is now
[TS]
01:32:06
◼
►
maybe just a few other things need to be
[TS]
01:32:08
◼
►
tweaks so what else is left a 5x same
[TS]
01:32:14
◼
►
price points HD no LTE possibly the same
[TS]
01:32:18
◼
►
crappy camera will there be anything
[TS]
01:32:22
◼
►
announced at the event such as a new or
[TS]
01:32:25
◼
►
an actual new version of the Apple TV
[TS]
01:32:30
◼
►
something different that supports 1080p
[TS]
01:32:32
◼
►
better newer CPU inside I would really
[TS]
01:32:38
◼
►
like it if I I'm leaning towards know
[TS]
01:32:42
◼
►
nothing about Apple TV but if there is
[TS]
01:32:44
◼
►
something about Apple TV I'm I'm
[TS]
01:32:48
◼
►
thinking it's a new little black Apple
[TS]
01:32:51
◼
►
TV box that just has like bumped specs
[TS]
01:32:55
◼
►
basically it's not like an Apple
[TS]
01:32:57
◼
►
television set it works the same as the
[TS]
01:32:59
◼
►
current little black square but you know
[TS]
01:33:01
◼
►
supports 1080p or whatever you know but
[TS]
01:33:03
◼
►
nothing big revolutionary which would
[TS]
01:33:06
◼
►
save the Apple television set Apple
[TS]
01:33:09
◼
►
saves TV whatever pipe dream that we all
[TS]
01:33:11
◼
►
have for an end-of-the-year event and
[TS]
01:33:13
◼
►
just give us 2012 to mostly say if
[TS]
01:33:17
◼
►
you're going to buy an Apple TV now you
[TS]
01:33:18
◼
►
can get an apple TV 3 which looks
[TS]
01:33:20
◼
►
exactly like the Apple TV 2 it's little
[TS]
01:33:21
◼
►
black square
[TS]
01:33:22
◼
►
maybe the biggest change they make is
[TS]
01:33:24
◼
►
that the the remote is Bluetooth but I
[TS]
01:33:26
◼
►
don't think they've changed that it
[TS]
01:33:27
◼
►
would be the same so there's going to be
[TS]
01:33:29
◼
►
no announcement or it's going to be a
[TS]
01:33:30
◼
►
little dinky black Apple TV 3 type thing
[TS]
01:33:33
◼
►
su degree what you agree with John
[TS]
01:33:34
◼
►
Gruber who said laser focus on the iPad
[TS]
01:33:37
◼
►
and and maybe something supportive in
[TS]
01:33:40
◼
►
the Apple TV to go along with 1080p in
[TS]
01:33:45
◼
►
the iPad or something like yeah why
[TS]
01:33:46
◼
►
would you take away from the iPad event
[TS]
01:33:48
◼
►
by by showing the new version of the
[TS]
01:33:51
◼
►
Apple TV and the flip side is if there
[TS]
01:33:54
◼
►
was like a really interesting TV product
[TS]
01:33:56
◼
►
like whatever Apple plans to do in TV
[TS]
01:33:57
◼
►
that's different than this little box
[TS]
01:33:59
◼
►
they've been making that would have been
[TS]
01:34:00
◼
►
evident on the invitation because that's
[TS]
01:34:02
◼
►
not something you do is like oh you know
[TS]
01:34:04
◼
►
oh by the way one more thing we have an
[TS]
01:34:06
◼
►
entirely new crazy product that is just
[TS]
01:34:08
◼
►
insane that's going to revolutionize
[TS]
01:34:10
◼
►
tell that's what the event is about if
[TS]
01:34:11
◼
►
they're going to ever come out for you
[TS]
01:34:13
◼
►
know we're gonna revolutionize
[TS]
01:34:14
◼
►
television that's not going to be an
[TS]
01:34:16
◼
►
afterthought in the event I just don't
[TS]
01:34:18
◼
►
see that so I'm thinking nothing about
[TS]
01:34:20
◼
►
television and then people would just be
[TS]
01:34:21
◼
►
sad like I say what the heck am i except
[TS]
01:34:23
◼
►
for maybe itunes store selling HD stuff
[TS]
01:34:26
◼
►
that seems reasonable to do because
[TS]
01:34:27
◼
►
there's like I get this read an iPad
[TS]
01:34:29
◼
►
yeah my games look great but I gotta
[TS]
01:34:30
◼
►
watch the 720p movies on it and I get
[TS]
01:34:32
◼
►
zoomed up that's kind of icky so 1080p
[TS]
01:34:35
◼
►
content could have come at any time
[TS]
01:34:36
◼
►
because max can play 1080p now so I
[TS]
01:34:38
◼
►
don't you know whatever Apple is waiting
[TS]
01:34:39
◼
►
on to unleash the 1080p video content
[TS]
01:34:42
◼
►
that could be waiting on deals or
[TS]
01:34:45
◼
►
re-encoding video or they gotta
[TS]
01:34:46
◼
►
renegotiate something at all those deals
[TS]
01:34:48
◼
►
is kinda like the Beatles it's like what
[TS]
01:34:50
◼
►
was stopping the Beatles thing from
[TS]
01:34:51
◼
►
happening
[TS]
01:34:51
◼
►
just stupid negotiation so I'll add the
[TS]
01:34:54
◼
►
last question I've heard a lot of people
[TS]
01:34:56
◼
►
out there speculating what apps or what
[TS]
01:34:58
◼
►
kind of apps will be demoed and featured
[TS]
01:35:00
◼
►
to show off the new Retina display I've
[TS]
01:35:03
◼
►
heard you know if you remember earlier
[TS]
01:35:05
◼
►
this week Adobe released photo photo
[TS]
01:35:08
◼
►
shop touch and perhaps I hadn't thought
[TS]
01:35:12
◼
►
of this but a couple people on Twitter
[TS]
01:35:14
◼
►
and said to me oh I think that app was
[TS]
01:35:16
◼
►
leaked it shouldn't have come out that
[TS]
01:35:18
◼
►
soon it was supposed to be held back it
[TS]
01:35:20
◼
►
came out too soon something like that
[TS]
01:35:21
◼
►
and that was supposed to be the big app
[TS]
01:35:23
◼
►
that Apple demoed on stage perhaps
[TS]
01:35:27
◼
►
that's true perhaps not question for you
[TS]
01:35:29
◼
►
what what kind of app do you think that
[TS]
01:35:31
◼
►
they'll use to highlight the new Retina
[TS]
01:35:34
◼
►
display games
[TS]
01:35:36
◼
►
so given they're gonna do games because
[TS]
01:35:38
◼
►
that it combines everything they want to
[TS]
01:35:39
◼
►
show they want to show the more power
[TS]
01:35:40
◼
►
slightly more probable GPU they want to
[TS]
01:35:42
◼
►
show that the graphics aren't Jaggi or
[TS]
01:35:44
◼
►
anything drawing app is probably a good
[TS]
01:35:47
◼
►
choice the real problem as Gruber
[TS]
01:35:49
◼
►
pointed out is the Retina display is
[TS]
01:35:53
◼
►
very difficult to demonstrate because
[TS]
01:35:54
◼
►
you're probably showing it in some
[TS]
01:35:56
◼
►
little movie and like YouTube or even
[TS]
01:35:59
◼
►
Apple's own HD movies you can't see the
[TS]
01:36:03
◼
►
difference of like someone filming a
[TS]
01:36:05
◼
►
Retina display and then compressing that
[TS]
01:36:06
◼
►
video you know I think he said you need
[TS]
01:36:08
◼
►
a Retina display to appreciate a Retina
[TS]
01:36:11
◼
►
display
[TS]
01:36:11
◼
►
yeah and they can do it in slides
[TS]
01:36:13
◼
►
because on slides they'll zoom in the
[TS]
01:36:15
◼
►
slide they'll show the zoomed in picture
[TS]
01:36:16
◼
►
of a sprite from a game looking all
[TS]
01:36:17
◼
►
blocky and I'll show the nice smooth
[TS]
01:36:18
◼
►
line it's very easy to demonstrate in a
[TS]
01:36:20
◼
►
slide but when they have the actual iPad
[TS]
01:36:22
◼
►
thing in their hand what are they going
[TS]
01:36:24
◼
►
to demonstrate that I think this is
[TS]
01:36:27
◼
►
actually a problem for for this iPad
[TS]
01:36:30
◼
►
announcement because we all know that is
[TS]
01:36:32
◼
►
going to be Retina display we all know
[TS]
01:36:34
◼
►
it's impossible to demonstrate and it's
[TS]
01:36:36
◼
►
like what applications is this Retina
[TS]
01:36:38
◼
►
display make possible that previously
[TS]
01:36:40
◼
►
we're impossible
[TS]
01:36:41
◼
►
pretty much none it just makes a whole
[TS]
01:36:43
◼
►
bunch of them better and we all
[TS]
01:36:43
◼
►
understand that but then like what do
[TS]
01:36:45
◼
►
you talk about for the rest of the time
[TS]
01:36:46
◼
►
if it's just an a5 X you can say oh and
[TS]
01:36:48
◼
►
the graphics are you know X amount
[TS]
01:36:50
◼
►
faster if it's not quad-core you can't
[TS]
01:36:53
◼
►
say on this a double number of cores but
[TS]
01:36:55
◼
►
even that like I demonstrate speed ah if
[TS]
01:36:58
◼
►
even if is LTE that you know I don't
[TS]
01:37:00
◼
►
know that I guess I guess I could look
[TS]
01:37:03
◼
►
back at what they demonstrated the iPad
[TS]
01:37:04
◼
►
2 announcement there's not something
[TS]
01:37:07
◼
►
kintyre lee knew that you couldn't do
[TS]
01:37:09
◼
►
before that you can do now it just makes
[TS]
01:37:10
◼
►
things better and faster it's kind of
[TS]
01:37:12
◼
►
like a it's not a speed bump but it's
[TS]
01:37:13
◼
►
kind of like when they do would do all
[TS]
01:37:15
◼
►
new all new Powerbooks and what would be
[TS]
01:37:19
◼
►
different about them well they'd have
[TS]
01:37:20
◼
►
faster CPUs that hold more memory that
[TS]
01:37:22
◼
►
this could be able to get bigger and
[TS]
01:37:23
◼
►
maybe the screen is nicer in some way
[TS]
01:37:27
◼
►
but that's it's not a speed bump that
[TS]
01:37:30
◼
►
I'll then have a new case so this could
[TS]
01:37:31
◼
►
have a new case too so I think their
[TS]
01:37:34
◼
►
ability to do cool demos with the iPad
[TS]
01:37:36
◼
►
is decreasing and they are they're going
[TS]
01:37:38
◼
►
to be forced to demonstrate their market
[TS]
01:37:42
◼
►
strength by saying look at all the cool
[TS]
01:37:43
◼
►
applications we have so they're probably
[TS]
01:37:45
◼
►
going to demo applications that if you
[TS]
01:37:46
◼
►
think about it like well you could add
[TS]
01:37:48
◼
►
that application on the iPad
[TS]
01:37:49
◼
►
- and yeah it looks nice easy to write
[TS]
01:37:51
◼
►
in a display but there's nothing about
[TS]
01:37:53
◼
►
this new iPad that now makes this
[TS]
01:37:55
◼
►
application possible it wasn't possibly
[TS]
01:37:56
◼
►
for a good example is Microsoft Office
[TS]
01:37:58
◼
►
Microsoft Office could exist in for the
[TS]
01:37:59
◼
►
iPad 1 or the iPad 2 it happens to be if
[TS]
01:38:02
◼
►
it happens to be available now that
[TS]
01:38:04
◼
►
would be a good thing to demonstrate to
[TS]
01:38:05
◼
►
say look we've got Microsoft Office on
[TS]
01:38:07
◼
►
the iPad isn't that awesome and the same
[TS]
01:38:09
◼
►
thing for games or any medical imaging
[TS]
01:38:12
◼
►
application you want to show I don't
[TS]
01:38:13
◼
►
really know what their pitch is going to
[TS]
01:38:15
◼
►
be I just know that their job is getting
[TS]
01:38:16
◼
►
harder it's much easier to show the iPad
[TS]
01:38:19
◼
►
but the first time and the second one
[TS]
01:38:20
◼
►
it's like thinner and his cameras and
[TS]
01:38:22
◼
►
stuff but now it's not like going to
[TS]
01:38:24
◼
►
keep adding geegaws and making new
[TS]
01:38:27
◼
►
things possible on the iPad it's just
[TS]
01:38:28
◼
►
going to be a demonstration of look at
[TS]
01:38:30
◼
►
the neat new applications that are out
[TS]
01:38:32
◼
►
for the iPad now a dock connector I
[TS]
01:38:38
◼
►
think the doctors say is the same do you
[TS]
01:38:42
◼
►
think that we will see a new dock
[TS]
01:38:43
◼
►
connector sometime in the near future
[TS]
01:38:45
◼
►
I really hope so maybe not this revision
[TS]
01:38:49
◼
►
it almost sounds like we could do a
[TS]
01:38:51
◼
►
whole show just talking about connectors
[TS]
01:38:52
◼
►
like we did that time I wish I did
[TS]
01:38:55
◼
►
oh i phone 5 is my bed for connector
[TS]
01:38:57
◼
►
changes will it happen just for the
[TS]
01:38:59
◼
►
iPhone or will it happen across the
[TS]
01:39:02
◼
►
board album for the iPhone first that's
[TS]
01:39:05
◼
►
my prediction okay no so it be with the
[TS]
01:39:07
◼
►
5 and it will not some people have
[TS]
01:39:10
◼
►
speculated will it be a u.s. mini USB or
[TS]
01:39:12
◼
►
micro USB and you're saying no it will
[TS]
01:39:14
◼
►
just as we have the previous NOC
[TS]
01:39:16
◼
►
connector it will be its own new thing
[TS]
01:39:17
◼
►
that won't be compatible with anything
[TS]
01:39:20
◼
►
else they'll probably sell an adapter
[TS]
01:39:21
◼
►
for it but it's not like they're going
[TS]
01:39:23
◼
►
to take a Thunderbolt port there or some
[TS]
01:39:27
◼
►
kind of other that it will be Apple's
[TS]
01:39:29
◼
►
own new port that we've never seen
[TS]
01:39:31
◼
►
before I think I would love to use
[TS]
01:39:33
◼
►
Thunderbolt I don't think there's room
[TS]
01:39:34
◼
►
inside an iPhone right the controller
[TS]
01:39:36
◼
►
chips to support this just it don't fit
[TS]
01:39:38
◼
►
it's not going to not going to make it
[TS]
01:39:40
◼
►
and never mind that the connector itself
[TS]
01:39:42
◼
►
would has to have all this chips in and
[TS]
01:39:43
◼
►
everything that's also big and bulky so
[TS]
01:39:45
◼
►
they would love that Thunderbolt and
[TS]
01:39:46
◼
►
thunderbolt is probably actually
[TS]
01:39:48
◼
►
feasible on the iPad but not on the
[TS]
01:39:49
◼
►
phone I think the reason they're going
[TS]
01:39:50
◼
►
to go to a new connector on the phone if
[TS]
01:39:52
◼
►
it doesn't happen in the iPhone 5 then
[TS]
01:39:53
◼
►
maybe the 6 or something is that they're
[TS]
01:39:57
◼
►
going to keep making that damn phone
[TS]
01:39:58
◼
►
thinner and at a certain point it be
[TS]
01:40:00
◼
►
like that the phone at the thin end is
[TS]
01:40:03
◼
►
as thin is the 30-pin connector is and
[TS]
01:40:05
◼
►
it starts to become your limiting factor
[TS]
01:40:07
◼
►
and you know also I've seen you know the
[TS]
01:40:10
◼
►
people taking screens the inside how
[TS]
01:40:11
◼
►
much that how much room on the inside of
[TS]
01:40:13
◼
►
the phone that connector takes up it
[TS]
01:40:15
◼
►
starts to become an issue it's like this
[TS]
01:40:17
◼
►
this stupid connector is dictating the
[TS]
01:40:19
◼
►
design of our phone to a large extent
[TS]
01:40:22
◼
►
because it's taking up room on the
[TS]
01:40:24
◼
►
inside and we can't make the edges any
[TS]
01:40:25
◼
►
thinner than this because it gets a
[TS]
01:40:26
◼
►
little bit ridiculous the ipod touches
[TS]
01:40:27
◼
►
close to the as thin as you can make it
[TS]
01:40:30
◼
►
and still support that 30 pin connector
[TS]
01:40:31
◼
►
in a reasonable manner so I think it's
[TS]
01:40:34
◼
►
it's days are numbered and and one of
[TS]
01:40:37
◼
►
the easy predictions is no replacement
[TS]
01:40:39
◼
►
the connector is gone and there is no
[TS]
01:40:41
◼
►
other connector right they'll use they
[TS]
01:40:43
◼
►
use Wi-Fi for syncing and capacitive
[TS]
01:40:45
◼
►
charging further further charging and
[TS]
01:40:48
◼
►
that's it there you don't plug your
[TS]
01:40:49
◼
►
phone into anything well you could for
[TS]
01:40:51
◼
►
charging you can always do a little
[TS]
01:40:52
◼
►
pinhole like charging you can get away
[TS]
01:40:54
◼
►
with a really tiny hole you know we
[TS]
01:40:56
◼
►
think they would be able to repurpose
[TS]
01:40:58
◼
►
the way they've done with the shuffle
[TS]
01:41:00
◼
►
where you can charge with the headphone
[TS]
01:41:02
◼
►
jack yeah it's possible you don't charge
[TS]
01:41:06
◼
►
for the headphone jack on the shuffle or
[TS]
01:41:07
◼
►
you charge with the well I guess it's
[TS]
01:41:09
◼
►
the USB connector through the headphone
[TS]
01:41:10
◼
►
jack but yeah right but it goes it in
[TS]
01:41:12
◼
►
other words there's no separate there's
[TS]
01:41:14
◼
►
only one hole in the shuffle and they
[TS]
01:41:16
◼
►
could do the same thing with the iPhone
[TS]
01:41:18
◼
►
yeah that's that's future if you chose
[TS]
01:41:20
◼
►
like iPhone 6 or 7 like if we still have
[TS]
01:41:22
◼
►
this 30 min connector by the time we're
[TS]
01:41:24
◼
►
talking about iPhone 6 this time so I
[TS]
01:41:25
◼
►
was thinking that that entire connector
[TS]
01:41:26
◼
►
goes away which is it's weird because
[TS]
01:41:28
◼
►
that connector doesn't just sync and
[TS]
01:41:31
◼
►
charge it does all sorts of stuff with
[TS]
01:41:33
◼
►
peripherals but at a certain point when
[TS]
01:41:37
◼
►
this thing becomes a certain in
[TS]
01:41:39
◼
►
particular becomes a certain size how
[TS]
01:41:41
◼
►
can you attach something to this skinny
[TS]
01:41:44
◼
►
little card it's just basically like a
[TS]
01:41:46
◼
►
little screen in your aunt how do you
[TS]
01:41:48
◼
►
attach something to that through to a
[TS]
01:41:50
◼
►
port that connects with it it becomes
[TS]
01:41:52
◼
►
cumbersome and unwieldy and just weird
[TS]
01:41:56
◼
►
you know it's what weird already to
[TS]
01:41:58
◼
►
attach things to the bottom of your
[TS]
01:41:59
◼
►
phone even it's like a battery pack or
[TS]
01:42:01
◼
►
something so I want the I want the
[TS]
01:42:03
◼
►
30-pin connector go away and if
[TS]
01:42:05
◼
►
something has to replace that I want to
[TS]
01:42:07
◼
►
be much smaller so I'm predicting iPhone
[TS]
01:42:08
◼
►
5 but this this side new iPad I'm almost
[TS]
01:42:11
◼
►
certain will have 30 pin connector on
[TS]
01:42:13
◼
►
the bottom just like usual okay
[TS]
01:42:16
◼
►
and I have no inside info just this
[TS]
01:42:19
◼
►
disclaimer in case people think I
[TS]
01:42:20
◼
►
actually know stuff I know nothing
[TS]
01:42:21
◼
►
you'll see how wrong I am
[TS]
01:42:23
◼
►
and when March 7th comes if you're
[TS]
01:42:24
◼
►
writing down things that I predicted
[TS]
01:42:26
◼
►
just check them off at it then that's it
[TS]
01:42:33
◼
►
hundred minutes pretty good okay have a
[TS]
01:42:39
◼
►
good week Joe you do now
[TS]