Documentation ¶
Index ¶
- Constants
- type BlockDevice
- type File
- type FileHandle
- type Filesystem
- type MemBlockDevice
- func (bd *MemBlockDevice) EraseBlockSize() int64
- func (bd *MemBlockDevice) EraseBlocks(start int64, len int64) error
- func (bd *MemBlockDevice) ReadAt(buf []byte, off int64) (n int, err error)
- func (bd *MemBlockDevice) Size() int64
- func (bd *MemBlockDevice) Sync() error
- func (bd *MemBlockDevice) WriteAt(buf []byte, off int64) (n int, err error)
- func (bd *MemBlockDevice) WriteBlockSize() int64
- type Syncer
Constants ¶
View Source
const Version = "0.4.0"
Version returns a user-readable string showing the version of the package for support purposes. Update this value before release of new version of software.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockDevice ¶
type BlockDevice interface { // ReadAt reads the given number of bytes from the block device. io.ReaderAt // WriteAt writes the given number of bytes to the block device. io.WriterAt // Size returns the number of bytes in this block device. Size() int64 // WriteBlockSize returns the block size in which data can be written to // memory. It can be used by a client to optimize writes, non-aligned writes // should always work correctly. WriteBlockSize() int64 // EraseBlockSize returns the smallest erasable area on this particular chip // in bytes. This is used for the block size in EraseBlocks. // It must be a power of two, and may be as small as 1. A typical size is 4096. EraseBlockSize() int64 // EraseBlocks erases the given number of blocks. An implementation may // transparently coalesce ranges of blocks into larger bundles if the chip // supports this. The start and len parameters are in block numbers, use // EraseBlockSize to map addresses to blocks. EraseBlocks(start, len int64) error }
A BlockDevice is the raw device that is meant to store a filesystem.
type File ¶
File specifies the common behavior of the file abstraction in TinyFS; this interface may be changed or superseded by the TinyGo os.FileHandle interface if/when that is merged and standardized.
type FileHandle ¶
type FileHandle interface { // Read reads up to len(b) bytes from the file. Read(b []byte) (n int, err error) // Write writes up to len(b) bytes to the file. Write(b []byte) (n int, err error) // Close closes the file, making it unusable for further writes. Close() (err error) }
FileHandle is a copy of the experimental os.FileHandle interface in TinyGo
type Filesystem ¶
type Filesystem interface { Format() error Mkdir(path string, _ os.FileMode) error Mount() error Open(path string) (File, error) OpenFile(path string, flags int) (File, error) Remove(path string) error Rename(oldPath string, newPath string) error Stat(path string) (os.FileInfo, error) Unmount() error }
type MemBlockDevice ¶
type MemBlockDevice struct {
// contains filtered or unexported fields
}
MemBlockDevice is a block device implementation backed by a byte slice
func NewMemoryDevice ¶
func NewMemoryDevice(pageSize, blockSize, blockCount int) *MemBlockDevice
func (*MemBlockDevice) EraseBlockSize ¶
func (bd *MemBlockDevice) EraseBlockSize() int64
func (*MemBlockDevice) EraseBlocks ¶
func (bd *MemBlockDevice) EraseBlocks(start int64, len int64) error
func (*MemBlockDevice) ReadAt ¶
func (bd *MemBlockDevice) ReadAt(buf []byte, off int64) (n int, err error)
func (*MemBlockDevice) Size ¶
func (bd *MemBlockDevice) Size() int64
func (*MemBlockDevice) Sync ¶
func (bd *MemBlockDevice) Sync() error
func (*MemBlockDevice) WriteAt ¶
func (bd *MemBlockDevice) WriteAt(buf []byte, off int64) (n int, err error)
func (*MemBlockDevice) WriteBlockSize ¶
func (bd *MemBlockDevice) WriteBlockSize() int64
Click to show internal directories.
Click to hide internal directories.