由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Linux版 - 新手求教简单问题
相关主题
如何使windows程序跟linux程序协调工作?求助:samba设置问题
关于library preloadlinux上面有没有轻量级的message queue? POSIX message queue不合适。
question on mem management能否建立一个虚拟网卡并监听端口?
linux kernel问题 (转载)How can we share system environment variable between two different process?
手机运用程序,如何反block ?你们谁搞过。
howto install vboxguestadditions on CentOS.Kernel ioctl call
有人玩树梅么? Raspery pi开机直接kernel panic会是什么原因?
关于在c++ member function里用signal( ) (转载)ubuntu的无线网卡不稳定
相关话题的讨论汇总
话题: 程序话题: 调用话题: 系统话题: kernel话题: 取走
进入Linux版参与讨论
1 (共1页)
c****n
发帖数: 21367
1
多谢各位大侠指点,先预祝新春佳节快乐 :)
我不是CS专业的,也没有学过operating system这门课,一直对
一个事情比较好奇,就是system calls是怎么实现的。
(linux kernel相关的书家里有,没有带过来,看也有点看不懂//blush)
系统已经在跑了,我写一个应用程序,包含一些头文件就能
调用系统提供的接口。那我的程序是怎么和系统内核交互的呢?
我的编译器怎么能告诉我的程序,运行到调用的时候跑去哪儿、用
什么方式取得系统资源呢?
比如说我写一个socket程序,调用了系统的socketcall(),
用blocked receive方法,系统是怎么把驱动那边收到的信息
送给我的程序的呢?通知可以是signaling,那怎么给我的程序
取走呢?如何保证万一我没取走,也能知道且及时reclaim memory?
另一个问题是,如果在用户态写一个程序,有办法设计一个接口,
使得其他程序也能调用并使用其资源么?假设其他程序不知道这个提供
接口程序的设计细节。
问题比较低级,还请多多指教,谢谢啊。
N****w
发帖数: 21578
2
http://linux-security.cn/ebooks/ulk3-html/0596005652/understandlk-CHP-10-SECT-2.html
blocked receive 就是说没数据的话你的程序调用的函数就不会返回

【在 c****n 的大作中提到】
: 多谢各位大侠指点,先预祝新春佳节快乐 :)
: 我不是CS专业的,也没有学过operating system这门课,一直对
: 一个事情比较好奇,就是system calls是怎么实现的。
: (linux kernel相关的书家里有,没有带过来,看也有点看不懂//blush)
: 系统已经在跑了,我写一个应用程序,包含一些头文件就能
: 调用系统提供的接口。那我的程序是怎么和系统内核交互的呢?
: 我的编译器怎么能告诉我的程序,运行到调用的时候跑去哪儿、用
: 什么方式取得系统资源呢?
: 比如说我写一个socket程序,调用了系统的socketcall(),
: 用blocked receive方法,系统是怎么把驱动那边收到的信息

q**d
发帖数: 16
3
I googled one for you about system calls - it is a good summary.
http://www.linux-tutorial.info/modules.php?name=MContent&pageid=88
IMHO, you still need to read a good os (not kernel) book to understand the
concept of scheduling, context switch between kernel mode/user mode, IPC, .
..
比如说我写一个socket程序,调用了系统的socketcall(),
用blocked receive方法,系统是怎么把驱动那边收到的信息
送给我的程序的呢?kernel synchronization mechanism
通知可以是signaling,那怎么给我的程序
取走呢?data copy from kernel space to user space
如何保证万一我没取走,也能知道且及时reclaim memo
c****n
发帖数: 21367
4
thanks alot. your generous comments cleared my questions.
wish you a happy new year! :)

.

【在 q**d 的大作中提到】
: I googled one for you about system calls - it is a good summary.
: http://www.linux-tutorial.info/modules.php?name=MContent&pageid=88
: IMHO, you still need to read a good os (not kernel) book to understand the
: concept of scheduling, context switch between kernel mode/user mode, IPC, .
: ..
: 比如说我写一个socket程序,调用了系统的socketcall(),
: 用blocked receive方法,系统是怎么把驱动那边收到的信息
: 送给我的程序的呢?kernel synchronization mechanism
: 通知可以是signaling,那怎么给我的程序
: 取走呢?data copy from kernel space to user space

1 (共1页)
进入Linux版参与讨论
相关主题
ubuntu的无线网卡不稳定手机运用程序,如何反block ?
问个一直没弄明白的initrd/initramfs问题howto install vboxguestadditions on CentOS.
安装suse linux 11.0求助有人玩树梅么? Raspery pi
要用新的kernel是不是必须得restart关于在c++ member function里用signal( ) (转载)
如何使windows程序跟linux程序协调工作?求助:samba设置问题
关于library preloadlinux上面有没有轻量级的message queue? POSIX message queue不合适。
question on mem management能否建立一个虚拟网卡并监听端口?
linux kernel问题 (转载)How can we share system environment variable between two different process?
相关话题的讨论汇总
话题: 程序话题: 调用话题: 系统话题: kernel话题: 取走