/* file-mmu.c: ramfs MMU-based file operations
*
* Resizable simple ram filesystem for Linux .
*
* Copyright ( C ) 2000 Linus Torvalds .
* 2000 Transmeta Corp .
*
* Usage limits added by David Gibson , Linuxcare Australia .
* This file is released under the GPL .
*/
/*
* NOTE ! This filesystem is probably most useful
* not as a real filesystem , but as an example of
* how virtual filesystems can be written .
*
* It doesn ' t get much simpler than this . Consider
* that this file implements the full semantics of
* a POSIX - compliant read - write filesystem .
*
* Note in particular how the filesystem does not
* need to implement any data structures of its own
* to keep track of the virtual data : using the VFS
* caches is sufficient .
*/
#include <linux/fs.h>
#include <linux/mm.h>
#include <linux/ramfs.h>
#include <linux/sched.h>
#include "internal.h"
static unsigned long ramfs_mmu_get_unmapped_area(struct file *file,
unsigned long addr, unsigned long len, unsigned long pgoff,
unsigned long flags)
{
return mm_get_unmapped_area(current->mm, file, addr, len, pgoff, flags);
}
const struct file_operations ramfs_file_operations = {
.read_iter = generic_file_read_iter,
.write_iter = generic_file_write_iter,
.mmap_prepare = generic_file_mmap_prepare,
.fsync = noop_fsync,
.splice_read = filemap_splice_read,
.splice_write = iter_file_splice_write,
.llseek = generic_file_llseek,
.get_unmapped_area = ramfs_mmu_get_unmapped_area,
};
const struct inode_operations ramfs_file_inode_operations = {
.setattr = simple_setattr,
.getattr = simple_getattr,
};
Messung V0.5 in Prozent C=97 H=100 G=98
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-09-28)
¤
*© Formatika GbR, Deutschland