From: Sean Young <sean@mess.org>
To: Charles Manning <manningc2@actrix.gen.nz>
Cc: linux-fsdevel@vger.kernel.org
Subject: Re: [RFC PATCH] forget block layer request for FTLs
Date: Sun, 27 Nov 2005 18:54:16 +0100 [thread overview]
Message-ID: <20051127175416.GA55520@atlantis.8hz.com> (raw)
In-Reply-To: <200511251336.41191.manningc2@actrix.gen.nz>
On Fri, Nov 25, 2005 at 01:36:41PM +1300, Charles Manning wrote:
> Being a bit of a flash-head, I find this RPC quite interesting. I am
> struggling though to see exactly where this is going to be used.
I don't think I explained it very well. Allow my to try again.
A normal block device like a harddisk can overwrite (write-in-place)
sectors; however flash has larger erase units than the sector size (512)
which makes this impossible. This problem is handled by the flash
translation layer (FTL). It has a layer of indirection which stores
sectors a different location on the flash, along with a table of
sector number and an address on the flash memory chip. When a sector is
overwritten it saves it a different location and updates the table. When
no free space exists any more on the flash, it needs to make an entire
erase unit available for erase. To achieve this, it moves around sectors
while updating the table for consistency.
The problem I'm trying to solve is that the FTL is unaware of sectors
which are no longer relevant, sectors of deleted files for example. Those
sectors do not need to be moved, they can simply be "forgotten", causing
the flash memory to fill up less quickly before another erase is
necessary.
Also, by "forgetting" sectors an erase unit might become available for
erase without requiring moving of sectors, allowing the erase to happen
before the flash memory is full. So, it makes FTL faster and the flash
last longer.
I hope this clears things up.
Sean
next prev parent reply other threads:[~2005-11-27 17:54 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-24 13:21 [RFC PATCH] forget block layer request for FTLs Sean Young
2005-11-25 0:36 ` Charles Manning
2005-11-25 1:42 ` Sean Young
2005-11-27 17:54 ` Sean Young [this message]
2005-11-25 10:55 ` Jörn Engel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20051127175416.GA55520@atlantis.8hz.com \
--to=sean@mess.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=manningc2@actrix.gen.nz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox