免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1183 | 回复: 0
打印 上一主题 下一主题

学习《嵌入式Linux应用程序开发详解》 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-06 10:05 |只看该作者 |倒序浏览


文件:
embedded-linux-app.tar.gz
大小:
119KB
下载:
下载
前两个礼拜学习了《嵌入式Linux应用程序开发详解》,虽然书中错误较多,不过觉得是一本好书。
1. 在使用线程函数时,不能随意使用exit()来退出线程,要用pthread_exit()代替。exit()表示退出当前进程;进程中可能还存在其他线程。
2. 编译带线程的程序时,需要加 -lpthread 参数编译。
3. 内核调度管理的是进程。一个进程可以包含多个线程。
内核态中的线程称为内核线程,用户态中的线程称为用户线程。用户线程由内核提供库来创
建。通常一个用户线程会对应一个内核线程,从而内核可以进行调度。
内核线程是由个轻量级的进程构成,通常一个进程中只有一个线程。
在使用pthread_create()创建用户线程时,可以在一个进程中创建多个线程。但每个线程会
对应一个内核线程。如果固定的对以某一个内核线程,这个属性称为绑定,就可以保证在需
要的时候总有内核线程与之对应,称为“一对一”。否则,对应的内核线程由系统控制分配,
不固定,称为“多对一”。
4. 使用pthread_create()创建线程有先后顺序,先创建的先运行
5. socket使用时,必须对socklen_t sin_size 初始化(>=0),否则可能会出错。如:
    int clientfd;
    socklen_t sin_size = 0; // or sizeof(socklen_t)
    struct sockaddr_in client_sockaddr;
    clientfd = accept(sockfd, (struct sockaddr*)&client_sockaddr, &sin_size);
    if (clientfd
附上我做的所有练习.

如有错误,请帮忙指正,多谢!


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/81094/showart_1362012.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP