共查询到20条相似文献,搜索用时 0 毫秒
1.
D. Janakiram Ashok Gunnam N. Suneetha Vineet Rajani K. Vinay Kumar Reddy 《Software》2008,38(13):1411-1427
Linux is an open‐source operating system, which has increased in its popularity and size since its birth. Various studies have been conducted in literature on the evolution of the Linux kernel, which have shown that there are considerable maintenance problems arising out of the coupling issues in the Linux kernel and this may hamper the evolution of the kernel in future. We propose an object‐oriented (OO) wrapper‐based approach to Linux kernel to provide OO abstractions to external modules. As the major growth of the size of the Linux kernel is in device drivers, our approach provides substantial benefits in terms of developing the device drivers in C++, although the kernel is in C. Providing reusability and extensibility features to device drivers improves the maintainability of the kernel. The OO wrappers provide several benefits to module developers in terms of understandability, development ease, support for OO modules, etc. The design and implementation of C++ wrappers for Linux kernel and the performance of a device driver re‐engineered in C++ are presented in this paper. Copyright © 2008 John Wiley & Sons, Ltd. 相似文献
2.
3.
Zheng Wei Wang Qinruo Wu Naiyou 《微计算机信息》2003,(12):88-90
Linuxoperationsystemcanworkintwomodes.Oneisinuserspace,theotherisinkernelspace.Whenwewanttowriteadevicedriver,weshoulddecidewhatfunctionscanbeimplementedbyusingmoduleandwhatcanbedoneinuserspace.Asangeneralprinciple,allthatcanbeprogrammedinuserspaceshouldnotbefulfilledinkernelspace.Althoughsometimeswritingauserspacedevicedriverisawisealternativetokernelhacking,userspacedriverscan'tfinishtoomuchtasks.Incasethatwecan'tac-complishourdriverinuserspace,orwhenweemphasizetheim-portanceofrealtimeandst… 相似文献
4.
介绍了一种精简的内核崩溃信息记录技术,该技术保存函数调用链并有选择地记录函数栈内容。记录下的内容可有效地分析定位问题,精简的记录存储可满足复位后快速重启的要求。 相似文献
5.
When developing Linux kernel features, it is a good practice to expose the necessary details to user‐space to enable extensibility. This allows the development of new features and sophisticated configurations from user‐space. Generally, software developers have to face the task of looking for a good way to communicate between the kernel and user‐space in Linux. This tutorial introduces you to Netlink sockets, a flexible and extensible messaging system that provides communication between kernel and user‐space. We provide the fundamental guidelines for practitioners who wish to develop Netlink‐based interfaces. Copyright © 2010 John Wiley & Sons, Ltd. 相似文献
6.
该文介绍了基于目标代码(二进制编译文件)为Linux运行时系统内核内存映像打补丁以修改内核的原理和方法,并给出了一个示例场景和程序以说明其应用。掌握该方法对于内核开发、系统调试和系统安全都具有重要的实用价值。 相似文献
7.
针对容错操作系统的可靠性评测问题,提出一种向Linux内核注入“单个位”故障的方法。基于x86体系结构中的软件中断机制,首先利用可加载内核模块机制在时钟中断中设置一个探测点,然后将用户态的故障数据传输到内核空间,最后利用一种C/S结构的故障注入模型,分别向Linux内核的arch、fs、kernel和mm四个子系统注入故障(瞬时型、间歇型和永久型)6700余次。实验结果表明,与arch和fs子系统相比,kernel和mm子系统对故障的敏感度较高,平均检测故障覆盖率达到38.23';与数据段相比,内核代码段对故障的敏感度较高,平均检测故障覆盖率达到73.49',该方法提高了容错型操作系统可靠性评测的速度和准确度。 相似文献
8.
Ayelet Israeli Author Vitae Author Vitae 《Journal of Systems and Software》2010,83(3):485-1097
We use 810 versions of the Linux kernel, released over a period of 14 years, to characterize the system’s evolution, using Lehman’s laws of software evolution as a basis. We investigate different possible interpretations of these laws, as reflected by different metrics that can be used to quantify them. For example, system growth has traditionally been quantified using lines of code or number of functions, but functional growth of an operating system like Linux can also be quantified using the number of system calls. In addition we use the availability of the source code to track metrics, such as McCabe’s cyclomatic complexity, that have not been tracked across so many versions previously. We find that the data supports several of Lehman’s laws, mainly those concerned with growth and with the stability of the process. We also make some novel observations, e.g. that the average complexity of functions is decreasing with time, but this is mainly due to the addition of many small functions. 相似文献
9.
为了提高混合无线网状网协议(hybrid wireless mesh protocol,HWMP)在工程应用中的鲁棒性,研究了Linux内核中的HWMP序列号机制.发现了由于“序列号有效”域在路由更新流程中处理不当引起的路径请求(path request,PREQ)死锁环问题,提出了删除“序列号有效”域的解决方案.该方案改变了HWMP的路由更新流程,消除了PREQ错误转发,进而消除了PREQ死锁环.在Linux内核中实现了该方案并进行了长时间的测试,表明了该方案的可行性和有效性. 相似文献
10.
11.
郑伟发 《网络安全技术与应用》2006,(3):14-16
Linux提供的基于内核的netfilter框架,具有通用性和可扩展性的特点,使得开发人员可结合自己的网络安全要求,在适当的位置上登记一些需要的处理函数,实现用户自己开发防火墙。本文主要分析Linux2.4netfilter的实现机制,并结合实例说明如何编写自己的内核并将其应用到netfilter的架构中,以实现自己的定制防火墙功能。对于大多数缺乏资金预算的企事业单位,结合单位实际自主开发防火墙,保护内网安全确实是一个性价比较高的选择。 相似文献
12.
13.
操作系统安全问题是信息安全领域最重要和最基本的问题之一。目前Linux操作系统作为很多网络安全设备所采用的基础操作系统平台,现有的安全性是不能满足要求的。Linux操作系统的安全性研究已引起越来越多的科研和商业机构的重视,该文对目前Linux内核安全研究的热点和一些重要的学术及商业项目进行了总结和分析。 相似文献
14.
15.
During the last decade, there has been a considerable interest in using Linux in real‐time systems, especially for industrial control. The simple and elegant design of Linux guarantees reliability and very good performance, while its open‐source license allows to modify and change the source code according to the user needs. However, Linux has been designed to be a general‐purpose operating system. Therefore, it presents some issues like unpredictable latencies and limited support for real‐time scheduling. In this paper, we present our experience in the design and implementation of the real‐time scheduler that has been recently included in the Linux kernel. The scheduler is based on the Resource Reservation paradigm, which allows to enforce temporal isolation between the running tasks. We describe the genesis of the project, the challenges we have encountered, the implementation details and the API offered to the programmers. Then, we show the experimental results measured on a real hardware. Copyright © 2015 John Wiley & Sons, Ltd. 相似文献
16.
17.
18.
In the conventional object model, encapsulated objects interact by messages that result in method invocations on the destination object. A message is delivered directly at the destination object. As a result of the direct deliveries, the message control code performing intermediate message manipulations cannot be abstracted out separately from the message processing code in the destination object without sacrificing the transparency of the intermediate message control. We propose the filtered delivery model of message passing for object-oriented languages to provide the separation of message control from message processing in a transparent manner. An interclass relationship, called a filter relationship, is introduced. As a consequence, a filter object can intercept and manipulate messages sent to another object called its client via filter member functions. A filter member function in a filter object can intercept a particular member function invocation on its client object. The filtered delivery model supports both upward and downward filtering mechanisms, facilitating interception of an upward message and its return message value. Filter objects can be plugged or unplugged at runtime. Binding of filter member functions to corresponding member functions in the client is selective and dynamic. The filtered delivery model is developed for the C++ object-oriented language; its applications are described and implementation is discussed. © 1997 John Wiley & Sons, Ltd. 相似文献
19.
Linux是一个开放源代码的类Unix操作系统 ,支持多任务、多用户、多进程 ,实时性好 ,稳定性高 ,硬件兼容性强。内核则是该操作系统的灵魂 ,升级内核具有重要的实际意义。本文最后结合作者的实践经验 ,介绍了升级内核的具体步骤以及注意事项 相似文献
20.
Limux是近几年发展起来的多任务操作系统,它开放源代码,允许用户升级内核。本文研究了Linux内核升级的方法,包括硬件配置、编译和错误分析,最终达到运行自己生成的内核。 相似文献