为了方便移植而对系统函数进行封装

本文讨论了一个将操作系统功能分层封装的方案,通过Com_kernel和Com_user接口实现不同操作系统的兼容性。然而,在实际应用中出现了应用程序错误地调用内核层接口等问题。此外,文章还探讨了抽象层次在面对频繁变动的底层实现时所面临的挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

操作系统分为kernel层和User层。我们公司的产品要面向不同的操作系统,于是对kernel层和User层函数进行封装,封装为Com_kernel和Com_user。Com_kernel和Com_user中函数的接口完全相同。

我们编写驱动程序就调用Com_kernel,而编写应用程序就调用Com_user。当操作系统变化时,我们只需要更改Com_kernel和Com_user就可以了,这样我们编写的程序就不用改了。

怎么样,这思想挺好的吧??可能是个牛人想出来的,并写了这个框架。

但是,具体实施的结果是什么呢? 具体编写程序的人,居然在应用程序中调用Com_kernel的头文件???这是神马逻辑?完全把分层的概念给搞没了!

而且写得程序没有几处是有注释的,命名也不规范,文件夹没有层次感,起的名称都差不多,真是伤脑筋!!!

看来编程规范真的是很重要,很重要!

但是,如果有了编程规范,代码就容易读了,那么是不是也就意味着可以随便解雇员工了??

冒冷汗............

2012.5.15

最近听了培训,老大说 这种抽象有利有弊。弊端是:只要底层一改,你抽象出来的东西就不能用了。因为厂商一直在优化,所有总在改!而且,遇到新的平台就要抽象,有时候还不如把代码移植过去方便! 是呀,为什么要搞posix标准呢,就是为了解决移植的问题,但是问题是,有100多种操作系统,他们的API都不一致呀!!!伤不起呀,伤不起!

2012.6.11

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值