读书人

C怎么操作底层

发布时间: 2012-06-14 16:00:31 作者: rapoo

C如何操作底层
原谅我这么无知又晦涩的问题。。。
WEB服务器例如Nginx用的也是C标准库中的socket系列函数来接收处理HTTP请求吗?
我感觉不可想象,但我还没有能阅读源码的能力,所以求教一下,C有办法或者说接口来操作最底层的网络通信吗? 也就是连"握手"都没有经过封装的

[解决办法]
最最底层还由操作系统的来做的。C只不过用了OS的接口,然后C的位处理比较强,你懂得
[解决办法]
C可以操作寄存器,这个就算是底层的了。
[解决办法]
c已经够底层了,难道要用c语言去处理硬件中断么。。。
[解决办法]
socket函数多数由C实现,其余用汇编实现。
[解决办法]
底层基本都是C+汇编

框架用C,部分地方为了效率用汇编

理论上只用C就可以操作所用设备
[解决办法]
慢慢澄清:socket函数不是C标准库函数,而是POSIX库函数(POSIX库可以认为是准C标准库);
socket函数不是处理HTTP的,而是TCP/IP的,对于HTTP的处理(比如GET/POST)需要应用层nginx自己来处理;
对于网络这一块来说,它是分层的,简单点比如http,tcp/ip,然后往下比如以太网,不难想象每一层其实都有自己的接口的,它们只用来处理本层的东西,同时为上层提供服务,socket就是TCP/IP层的接口,当然往下,自然也有“底层”的接口,只是你还不知道而已。

其实整个计算机的世界就是一个不断抽象的世界,从自然界的高低电平抽象出0/1,然后抽象出计算,然后是机器语言,C语言……
[解决办法]
C -> 寄存器,对寄存器中的位操作。编程时要查看Datasheet

读书人网 >C++

热点推荐