20-30

21、Norflash与Nandflash的区别
 (1)、NAND闪存的容量比较大
 (2)、由于NandFlash没有挂接在地址总线上,所以如果想用NandFlash作为系统的启动盘,就需要CPU具备特殊的功能,
 如s3c2410在被选择为NandFlash启动方式时会在上电时自动读取NandFlash的4k数据到地址0的SRAM中。
 (3)、NAND Flash一般地址线和数据线共用,对读写速度有一定影响。NOR Flash闪存数据线和地址线分开,
    所以相对而言读写速度快一些。
22、反码:对原码除符号位外的其余各位逐位取反就是反码
 补码:负数的补码就是对反码加1
 正数的原码、反码、补码都一样
23、pthread_t tid;
 pthread_create(&tid,NULL,pthread_func,NULL);//创建线程
 pthread_join(tid,NULL);//等待子线程结束,并回收资源
 pthread_detach(tid);//与当前进程分离
 pthread_exit(NULL);//退出调用线程
 pthread_cancel(tid);//取消线程
 pthread_mutex mutex=PTHREAD_MUTEX_INITIALIZER;
 pthread_mutex_init(&mutex,NULL);//初始化一个互斥锁
 pthread_mutex_lock(&mutex);//对互斥锁上锁
 pthread_mutex_unlock(&mutex);//对互斥锁解锁
 sem_t sem;
 sem_init(&sem,0,1);//创建信号量并初始化它的值
 sem_wait(&sem);//信号量的值减1
 sem_post(&sem);//信号量的值加1
24、内存管理MMU的作用
  *内存分配和回收
  *内存保护
  *内存扩充
  *地址映射 
25、ROM是只读存储器,掉电不丢失
 RAM是读写存储器,掉电丢失
26、SRAM:CPU的缓存就是SRAM,静态的随机存取存储器,加电情况下,不需要刷新,数据不会丢失
 DRAM,动态随机存取存储器最为常见的系统内存,需要不断刷新,才能保存数据
 SDRAM:同步动态随机存储器,即数据的读取需要时钟来同步。
27、signed char 的取值范围-128~127.
28、编译和链接有什么不同?(如外部符号的处理)
 编译生成的是目标文件(object  *.o);
 编译过程中对于外部符号不做任何解释和处理。外部符号对应的就是“符号”

 链接生成的是可执行程序
 链接将会解释和处理外部符号。外部符号对应的是地址
29、已知strcpy函数的函数原型是:
 char *strcpy(char *strDest, const char *strSrc)。其中,strDest是目的字符串,strSrc是源字符串。
 不调用C++/C的字符串库函数,请编写函数strcpy
 char *strcpy(char *strDest, const char *strSrc)
 {
  int i=0;
  if(!(strDest && strSrc))
   return;
  while(strDest[i++] = *strSrc++);
  return strDest;
 }
30、strcpy能把strSrc的内容复制到strDest,为什么还要char *类型的返回值?
 为了实现链式表达式
 int len = strlen(strcpy(strDest, strSrc));

上一篇:windows与linux多线程对比


下一篇:百度SEM 从小白到大神(完结)