这篇教程C++ sys_read函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中sys_read函数的典型用法代码示例。如果您正苦于以下问题:C++ sys_read函数的具体用法?C++ sys_read怎么用?C++ sys_read使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了sys_read函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: read_eristatic int read_eri(const char *path, eri_read_req_type* read_req_ptr, eri_read_rsp_type* read_rsp_ptr){ int read;// size_t count; int read_size;// int ret; mm_segment_t oldfs;#ifdef DEBUG_ERI printk(KERN_ERR "%s, UTS ERI READ Test START/n",__func__);#endif oldfs = get_fs(); set_fs(KERNEL_DS); memset(eri_buf,0,sizeof(byte) * 1400); read = sys_open((const char __user *)path, O_RDONLY , 0); if(read < 0) {#ifdef DEBUG_ERI printk(KERN_ERR "%s, ERI File Open Fail/n",__func__);#endif return -1; } else {#ifdef DEBUG_ERI printk(KERN_ERR "%s, ERI File Open Success/n",__func__);#endif } read_size = 0; while(sys_read(read, &eri_buf[read_size++], 1) == 1) {} memcpy(read_rsp_ptr->eri_data.user_eri_data, eri_buf, read_size); if(read_size <= 0) {#ifdef DEBUG_ERI printk(KERN_ERR "%s, ERI File Read Fail/n",__func__);#endif read_rsp_ptr->cmd_code = read_req_ptr->cmd_code; read_rsp_ptr->sub_cmd_code = read_req_ptr->sub_cmd_code; read_rsp_ptr->eri_data.eri_size = 0; read_rsp_ptr->status = 1; } else {#ifdef DEBUG_ERI printk(KERN_ERR "%s, UTS ERI READ Test Make Rsp PACK/n",__func__);#endif read_rsp_ptr->cmd_code = read_req_ptr->cmd_code; read_rsp_ptr->sub_cmd_code = read_req_ptr->sub_cmd_code; read_rsp_ptr->eri_data.eri_size = read_size - 1; read_rsp_ptr->status = 0; } set_fs(oldfs); sys_close(read); return read_size;}
开发者ID:TeamRegular,项目名称:android_kernel_lge_iproj,代码行数:58,
示例2: read_valuestatic double read_value(int fd) { double value = 0.0; if (fd != SYSTEM_FD_INVALID) { sys_read(fd, (char*)&value, sizeof(double)); } return value;}
开发者ID:fdomig,项目名称:ottos,代码行数:9,
示例3: batt_get_temp// jprimero: these two battery functions should be replaced by the actual// battery driver and should avoid reading the battery tempeature through sysfsstatic int batt_get_temp(void *dev_data, long *temp){ int ret = 0; //fd, count; //char buf[64]; //mm_segment_t old_fs; long btemp; #if 0 old_fs = get_fs(); set_fs(KERNEL_DS); fd = sys_open("/sys/class/power_supply/battery/temp", O_RDONLY, 0644); if (fd >= 0) { count = sys_read(fd, buf, 64); if (count < 64) buf[count]='/0'; ret = kstrol(buf, 10, &btemp); sys_close(fd); *temp = btemp*100; // jprimero: return temperature in millicelsius } else { ret = -1; } set_fs(old_fs); #else #if 1 //printk("*****btemp = %d***tps80031_init_flag = %d***/n",btemp,tps80031_init_flag); if(tps80031_init_flag) { //printk("****tps80031_get_battery_temp****/n"); btemp = tps80031_get_battery_temp(); } else { ret = 0; //printk("****228****/n"); *temp = -50000; return ret; } if(btemp < 0) { ret = -16; } else { *temp = btemp*100; //printk("******temp = %d******/n",btemp*100); } #endif #endif //printk("****241****/n"); return ret;}
开发者ID:sloanyang,项目名称:android_kernel_zte_u950,代码行数:59,
示例4: killme// yeah, lets do itvoid killme(){char c='a';int pid;pid = sys_getpid();for(;;) {sys_read(0, &c, 1);sys_kill(pid, 11);}}
开发者ID:BozkurTR,项目名称:Unix-PrivEsc,代码行数:12,
示例5: slot_switch_init_workstatic void slot_switch_init_work(struct work_struct *work){ struct delayed_work *dw = container_of(work, struct delayed_work, work); struct slot_switch_wq *wq = container_of(dw, struct slot_switch_wq, work_q);// struct fsa9480_info *usbsw = wq->sdata; int fd; int ret; char buffer[2]={0}; mm_segment_t fs; printk("[slot switch]: %s :: /n",__func__); fs = get_fs(); set_fs(get_ds()); if ((fd = sys_open("/efs/slot_switch.bin", O_CREAT|O_RDWR ,0664)) < 0) { schedule_delayed_work(&wq->work_q, msecs_to_jiffies(2000)); printk("[slot switch]: %s :: open failed %s ,fd=0x%x/n",__func__,"/efs/slot_switch.bin",fd); if(fd < 0){ sys_close(fd); set_fs(fs); } } else { cancel_delayed_work(&wq->work_q); printk("[slot switch]: %s :: open success %s ,fd=0x%x/n",__func__,"/efs/slot_switch.bin",fd); } ret = sys_read(fd, buffer, 1); if(ret < 0) { printk("slot_switch READ FAIL!/n"); sys_close(fd); set_fs(fs); return; } printk("slot switch buffer : %s/n", buffer);#if 0//!defined(CONFIG_MACH_MELIUS_CHN_CTC) && !defined(CONFIG_MACH_CRATER_CHN_CTC) if (!strcmp(buffer, "0"))//SPRD { gpio_set_value(GPIO_SIM_SEL, 0); printk("set slot switch to %x/n", gpio_get_value(GPIO_SIM_SEL)); } else if(!strcmp(buffer, "1")){//BCOM gpio_set_value(GPIO_SIM_SEL, 1); printk("set slot switch to %x/n", gpio_get_value(GPIO_SIM_SEL)); }#endif sys_close(fd); set_fs(fs); return;}
开发者ID:gpillusion,项目名称:Samsung_Kernel_Source_SM-G710K,代码行数:54,
示例6: sys_preadasmlinkage ssize_t sys_pread(unsigned int fd, char * buf, size_t count, loff_t pos){ ssize_t ret; struct file * file; struct vms_fd * vms_fd; ssize_t (*read)(struct file *, char *, size_t, loff_t *); ret = -EBADF; vms_fd = fget(fd); file = vms_fd->vfd$l_fd_p;#if 0 if (file && ((struct _fcb *)(file))->fcb$b_type==DYN$C_FCB) goto do_fcb;#else struct _rabdef * rab = file; // fget(fd); loff_t curpos = 512*(rab->rab$w_rfa[2] + (rab->rab$w_rfa[1] << 16)) + rab->rab$w_rfa[0];#define SEEK_SET 0 sys_lseek(fd, pos, SEEK_SET); ret = sys_read(fd, buf, count); sys_lseek(fd, curpos, SEEK_SET); return ret;#endif if (!file) goto bad_file; if (!(file->f_mode & FMODE_READ)) goto out; ret = -EINVAL; if (!file->f_op || !(read = file->f_op->read)) goto out; if (pos < 0) goto out; ret = read(file, buf, count, &pos);out:bad_file: return ret;#if 0 do_fcb: {} struct _fcb * fcb; unsigned long offset; ret = -EBADF; file = fget(fd); fcb = file; offset = pos; ret = rms_kernel_read(file, offset, buf, count);#if 0 fcb->fcb$l_reserve1 += ret;#endif return ret;#endif}
开发者ID:Rick33,项目名称:freevms,代码行数:54,
示例7: TestAvoid TestA(){ int ret; /*printk("-----------------------------------------/n");*/ int fd = open("/",0,0); if(fd < 0) { printk("open error. fd = %d.", fd); } close(fd); struct m_inode *inode; fd = open("/sunkang",0,O_CREAT); if(fd < 0) { printk("open error. fd = %d.", fd); } else { inode = current->filp[fd]->f_inode; printk("sunkang inode num = %d",inode->i_num); close(fd); } if((fd = open("/sunkang/kamus",I_REGULAR,O_CREAT)) < 0) { } else { inode = current->filp[fd]->f_inode; printk("kamus inode num = %d mode = %x.",inode->i_num, inode->i_mode); } printk("---------------------------------------/n"); char buf[] = "wo shi sunkang"; sys_write(fd,buf, sizeof(buf)); ret = close(fd); printk("close ret = %d.",ret); if((fd = open("/sunkang/kamus",I_REGULAR,0)) < 0) { printk("opern error."); } char abc[15] = {0}; sys_read(fd,abc,sizeof(abc)); printk("abc = %s/n",abc); close(fd); printk("[[email C++ sys_reboot函数代码示例 C++ sys_page_unmap函数代码示例
|