您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ sys_mount函数代码示例

51自学网 2021-06-03 08:37:20
  C++
这篇教程C++ sys_mount函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中sys_mount函数的典型用法代码示例。如果您正苦于以下问题:C++ sys_mount函数的具体用法?C++ sys_mount怎么用?C++ sys_mount使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了sys_mount函数的26个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: mount

/* * mount a file system */int mount(const char * dev, const char * dir, const char * fs, u32_t flags){    char dev_path[MAX_PATH];    char dir_path[MAX_PATH];    struct stat st;    int err;    if((err = vfs_path_conv(dir, dir_path)) != 0)        return err;    if(dev != NULL)    {        if((err = vfs_path_conv(dev, dev_path)) != 0)            return err;        if(stat(dev_path, &st) != 0)            return EEXIST;        if(! S_ISBLK(st.st_mode))            return EACCES;        return sys_mount(dev_path, dir_path, (char *)fs, flags);    }    else        return sys_mount(NULL, dir_path, (char *)fs, flags);}
开发者ID:ChunHungLiu,项目名称:bos,代码行数:29,


示例2: prepare_namespace

/* * Prepare the namespace - decide what/where to mount, load ramdisks, etc. */void __init prepare_namespace(void){	int is_floppy;	mount_devfs();	md_run_setup();	if (saved_root_name[0]) {		root_device_name = saved_root_name;		ROOT_DEV = name_to_dev_t(root_device_name);		if (strncmp(root_device_name, "/dev/", 5) == 0)			root_device_name += 5;	}	is_floppy = MAJOR(ROOT_DEV) == FLOPPY_MAJOR;	if (initrd_load())		goto out;	if (is_floppy && rd_doload && rd_load_disk(0))		ROOT_DEV = Root_RAM0;	mount_root();out:	umount_devfs("/dev");	sys_mount(".", "/", NULL, MS_MOVE, NULL);	sys_chroot(".");	security_sb_post_mountroot();	mount_devfs_fs ();}
开发者ID:iPodLinux,项目名称:linux-2.6.7-ipod,代码行数:34,


示例3: init_fs

void *init_fs(char *disk_name){    int err;    void *data = NULL;    init_block_cache(16348, 0);    init_vnode_layer();    err = sys_mkdir(1, -1, "/myfs", 0);    if (install_file_system(&fs_entry, "myfs", 1, -1) == NULL) {        printf("can't install my file system/n");        exit(0);    }    data = sys_mount(1, "myfs", -1, "/myfs", disk_name, 0, NULL, 0);    if (data == NULL) {        printf("could not mount %s on /myfs/n", disk_name);        exit(0);    }	err = sys_chdir(1, -1, "/myfs");	if (err != 0) {		printf("Failed to cd into /myfs.");		sys_unmount(1, -1, "/myfs");		exit(0);	}        return data;}
开发者ID:SummerSnail2014,项目名称:haiku,代码行数:31,


示例4: rfs_mount

/* * process MOUNT command, mount the device to the target directory. */static void rfs_mount(struct aipc_rfs_msg *msg){    struct aipc_rfs_mount *param = (struct aipc_rfs_mount*)msg->parameter;    int dev_name_size, dir_name_size, fs_name_size, ret;    char dev_name[450], dir_name[450], fs_type[24];    mm_segment_t oldfs = get_fs();    dev_name_size = param->dev_name_size;    dir_name_size = param->dir_name_size;    fs_name_size = param->fs_name_size;    memset(dev_name, 0x0, sizeof(dev_name));    memset(dir_name, 0x0, sizeof(dir_name));    memset(fs_type, 0x0, sizeof(fs_type));    memcpy(dev_name, param->name, dev_name_size);    memcpy(dir_name, &param->name[dev_name_size], dir_name_size);    memcpy(fs_type, &param->name[dev_name_size + dir_name_size], fs_name_size);    set_fs(KERNEL_DS);    ret = sys_mount(dev_name, dir_name, fs_type,  MS_MGC_VAL | MS_RDONLY | MS_NOSUID, (void *)NULL);    set_fs(oldfs);    if(ret < 0) {        DMSG("rfs_mount error: %d/n", ret);    }    msg->parameter[0] = ret;}
开发者ID:hotelzululima,项目名称:linux-hero4,代码行数:31,


示例5: init_fs

void *init_fs(char *disk_name){    int err;    void *data = NULL;        init_block_cache(1024, 0);    init_vnode_layer();    err = sys_mkdir(1, -1, "/myfs", 0);    if (install_file_system(&myfs_ops, "myfs", 1, -1) == NULL) {        printf("can't install my file system/n");        exit(0);    }    data = sys_mount(1, "myfs", -1, "/myfs", disk_name, 0, NULL, 0);    if (data == NULL) {        printf("could not mount %s on /myfs/n", disk_name);        exit(0);    }        return data;}
开发者ID:errordeveloper,项目名称:eko,代码行数:25,


示例6: mount_nfs_root

static int __init mount_nfs_root(void){	void *data = nfs_root_data();	if (data && sys_mount("/dev/root","/root","nfs",root_mountflags,data) == 0)		return 1;	return 0;}
开发者ID:SimonKagstrom,项目名称:mci500h-linux-2.4.27,代码行数:8,


示例7: mount

/* * mount a file system */int mount(const char * dev, const char * dir, const char * fs, u32_t flags){	char dir_path[MAX_PATH];	int err;	if((err = vfs_path_conv(dir, dir_path)) != 0)		return err;	return sys_mount((char *)dev, dir_path, (char *)fs, flags);}
开发者ID:IngenicC,项目名称:xboot,代码行数:13,


示例8: prepare_namespace

/* * Prepare the namespace - decide what/where to mount, load ramdisks, etc. */void __init prepare_namespace(void){	int is_floppy;	if (root_delay) {		printk(KERN_INFO "Waiting %dsec before mounting root device.../n",		       root_delay);		ssleep(root_delay);	}	/* wait for the known devices to complete their probing */	while (driver_probe_done() != 0)		msleep(100);	md_run_setup();	if (saved_root_name[0]) {		root_device_name = saved_root_name;		if (!strncmp(root_device_name, "mtd", 3) ||		    !strncmp(root_device_name, "ubi", 3) ||		    !strncmp(root_device_name, "mmc", 3)) {			mount_block_root(root_device_name, root_mountflags);			goto out;		}		ROOT_DEV = name_to_dev_t(root_device_name);		if (strncmp(root_device_name, "/dev/", 5) == 0)			root_device_name += 5;	}	if (initrd_load())		goto out;	/* wait for any asynchronous scanning to complete */	if ((ROOT_DEV == 0) && root_wait) {		printk(KERN_INFO "Waiting for root device %s.../n",			saved_root_name);		while (driver_probe_done() != 0 ||			(ROOT_DEV = name_to_dev_t(saved_root_name)) == 0)			msleep(100);	}	is_floppy = MAJOR(ROOT_DEV) == FLOPPY_MAJOR;	if (is_floppy && rd_doload && rd_load_disk(0))		ROOT_DEV = Root_RAM0;	mount_root();out:	sys_mount(".", "/", NULL, MS_MOVE, NULL);	sys_chroot(".");	security_sb_post_mountroot();}
开发者ID:heroistired,项目名称:jzcode-x11,代码行数:55,


示例9: sys_compat_mount

asmlinkage intsys_compat_mount (char *devname, char *dirname, char *type, unsigned long flags, void *data,		  struct pt_regs *regs){	extern int sys_mount (char *, char *, char *, unsigned long, void *);	if (old_calling_standard (regs)) {		printk (KERN_NOTICE "%s (%d): unsupported mount call standard/n",			current->comm, current->pid);		return -EINVAL;	}	return sys_mount (devname, dirname, type, flags, data);}
开发者ID:chinnyannieb,项目名称:empeg-hijack,代码行数:13,


示例10: parasite_get_proc_fd

static int parasite_get_proc_fd(){	int ret, fd = -1;	char buf[2];	ret = sys_readlink("/proc/self", buf, sizeof(buf));	if (ret < 0 && ret != -ENOENT) {		sys_write_msg("Can't readlink /proc/self/n");		return ret;	}	/* Fast path -- if /proc belongs to this pidns */	if (ret == 1 && buf[0] == '1') {		fd = sys_open("/proc", O_RDONLY, 0);		goto out_send_fd;	}	if (sys_mkdir(proc_mountpoint, 0700)) {		sys_write_msg("Can't create a directory ");		sys_write_msg(proc_mountpoint);		sys_write_msg("/n");		return ret;	}	if (sys_mount("proc", proc_mountpoint, "proc", MS_MGC_VAL, NULL)) {		sys_write_msg("mount failed/n");		ret = -1;		goto out_rmdir;	}	fd = sys_open(proc_mountpoint, O_RDONLY, 0);	if (sys_umount2(proc_mountpoint, MNT_DETACH)) {		sys_write_msg("Can't umount procfs/n");		return -1;	}out_rmdir:	if (sys_rmdir(proc_mountpoint)) {		sys_write_msg("Can't remove directory/n");		return -1;	}out_send_fd:	if (fd < 0)		return fd;	ret = send_fd(tsock, NULL, 0, fd);	sys_close(fd);	return ret;}
开发者ID:OSLL,项目名称:pmover,代码行数:50,


示例11: sunos_mount

asmlinkage intsunos_mount(char *type, char *dir, int flags, void *data){	int linux_flags = MS_MGC_MSK; /* new semantics */	int error;	char *dev_fname = 0;	/* We don't handle the integer fs type */	if ((flags & SMNT_NEWTYPE) == 0)		return -EINVAL;	/* Do not allow for those flags we don't support */	if (flags & (SMNT_GRPID|SMNT_NOSUB|SMNT_MULTI|SMNT_SYS5))		return -EINVAL;	if(flags & SMNT_REMOUNT)		linux_flags |= MS_REMOUNT;	if(flags & SMNT_RDONLY)		linux_flags |= MS_RDONLY;	if(flags & SMNT_NOSUID)		linux_flags |= MS_NOSUID;	error = verify_area(VERIFY_READ, type, 16);	if(error)		return error;	if(strcmp(type, "ext2") == 0) {		dev_fname = (char *) data;	} else if(strcmp(type, "iso9660") == 0) {		dev_fname = (char *) data;	} else if(strcmp(type, "minix") == 0) {		dev_fname = (char *) data;	} else if(strcmp(type, "ext") == 0) {		dev_fname = (char *) data;	} else if(strcmp(type, "xiafs") == 0) {		dev_fname = (char *) data;	} else if(strcmp(type, "nfs") == 0) {		error = sunos_nfs_mount (dir, flags, data);		return error;        } else if(strcmp(type, "ufs") == 0) {		printk("Warning: UFS filesystem mounts unsupported./n");		return -ENODEV;	} else if(strcmp(type, "proc")) {		return -ENODEV;	}	if(error)		return error;	error = sys_mount(dev_fname, dir, type, linux_flags, NULL);	return error;}
开发者ID:andreiw,项目名称:mkunity,代码行数:48,


示例12: devtmpfs_mount

/* * If configured, or requested by the commandline, devtmpfs will be * auto-mounted after the kernel mounted the root filesystem. */int devtmpfs_mount(const char *mntdir){    int err;    if (!mount_dev)        return 0;    if (!thread)        return 0;    err = sys_mount("devtmpfs", (char *)mntdir, "devtmpfs", MS_SILENT, NULL);    if (err)        printk(KERN_INFO "devtmpfs: error mounting %i/n", err);    else        printk(KERN_INFO "devtmpfs: mounted/n");    return err;}
开发者ID:twobrokenshoes,项目名称:linux-3.8,代码行数:21,


示例13: do_mount_root

static int __init do_mount_root(char *name, char *fs, int flags, void *data){	struct super_block *s;	int err = sys_mount(name, "/root", fs, flags, data);	if (err)		return err;	sys_chdir("/root");	s = current->fs->pwd.dentry->d_sb;	ROOT_DEV = s->s_dev;	printk(KERN_INFO	       "VFS: Mounted root (%s filesystem)%s on device %u:%u./n",	       s->s_type->name,	       s->s_flags & MS_RDONLY ?  " readonly" : "",	       MAJOR(ROOT_DEV), MINOR(ROOT_DEV));	return 0;}
开发者ID:ARMWorks,项目名称:FA_2451_Linux_Kernel,代码行数:17,


示例14: mount_early_partition

/***************************************************************************** 函 数 名  : mount_early_partition 功能描述  : 挂载列表中的分区 输入参数  : mount_item:挂载列表 输出参数  : 返 回 值  : 成功/失败 调用函数  : 被调函数  :*****************************************************************************/static int mount_early_partition(mount_early *mount_item){    struct mtd_info *mtd;    int rt = 0;    char mount_name[32] ={0};    struct ST_PART_TBL *part = NULL;    part = find_early_partition(mount_item->img_type);    if(part != NULL){        mtd = get_mtd_device_nm(part->name);    	if (IS_ERR(mtd)) {        	printk("get_mtd_device_nm error./n");        	return PTR_ERR(mtd);        }        snprintf(mount_name, sizeof(mount_name) - 1, "/dev/block/mtdblock%d", mtd->index);        printk(KERN_DEBUG "going to mount %s  mount point %s/n", mount_name, mount_item->mount_point);        if((rt = sys_mkdir(mount_item->mount_point, S_IRUSR | S_IRGRP)) < 0)        {            printk(KERN_ERR "create dir failed %s ret 0x%x/n", mount_item->mount_point, rt);            return rt ;        }        rt = sys_mknod(mount_name, S_IFBLK|S_IRWXU|S_IRWXG|S_IRWXO, MDEV_FS(31, mtd->index));        if(rt < 0)        {            printk(KERN_ERR "mknod failed %s ret 0x%x/n", mount_name, rt);            return rt ;        }        rt = sys_mount(mount_name, mount_item->mount_point, "yaffs2", 0, NULL);        if(rt < 0)        {            printk(KERN_ERR "mount failed %s  %s ret 0x%x 0x%x/n", mount_name, /                mount_item->mount_point, rt, MKDEV(31,mtd->index));            return rt ;        }        return 0;    }else{        printk(KERN_ERR "no find nv dload partition!!!/n");        return 1 ;    }}
开发者ID:fly2436732935,项目名称:android_kernel_honor7_PLK-AL10_PLK-TL01H_PLK-UL00_PLK-CL00_PLK-TL00,代码行数:54,


示例15: devtmpfs_mount

/* * If configured, or requested by the commandline, devtmpfs will be * auto-mounted after the kernel mounted the root filesystem. */int devtmpfs_mount(const char *mntdir){	int err;	if (!mount_dev)		return 0;	if (!thread)		return 0;	err = sys_mount("devtmpfs", (char *)mntdir, "devtmpfs", MS_SILENT, NULL);	if (err)#ifdef CONFIG_DEBUG_PRINTK		printk(KERN_INFO "devtmpfs: error mounting %i/n", err);#else		;#endif	else
开发者ID:nos1609,项目名称:Chrono_Kernel-1,代码行数:22,


示例16: devtmpfsd

/*! 2017. 6. 3 study -ing */static int devtmpfsd(void *p){	char options[] = "mode=0755";	int *err = p;	/*! sys_unshare
C++ sys_mutex_lock函数代码示例
C++ sys_mbox_trypost函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。