{"title":"How to Reduce Network Interrupt Latency for Real-Time Processing","authors":"Daesung Lee, Kuinam J. Kim","doi":"10.1109/ICISA.2011.5772419","DOIUrl":null,"url":null,"abstract":"There are efforts to transform the Linux system to a real-time system as it becomes very popular and stable. Linux divides the interrupt service into two steps: Top Half and Bottom Half. When the interrupt occurs, Because of this Bottom Half which is not handled immediately, Linux is not a real-time system. Transforming Linux system into a real-time system, however, is a very difficult and time-consuming task because we have to modify the kernel in many places to ensure its correctness under repeated reentering events. We suggest limiting the effort to a certain specific interrupt, for example network interrupt, instead of trying to provide real-time handling for all interrupts. The scope is limited, and we can control the amount of shared data structures among the reentering kernel threads. We identify a special packet that requires real-time treatment and process it inside the Top Half without delaying. This thesis explains the algorithm and shows how it is implemented in Linux.","PeriodicalId":425210,"journal":{"name":"2011 International Conference on Information Science and Applications","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-04-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 International Conference on Information Science and Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICISA.2011.5772419","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
There are efforts to transform the Linux system to a real-time system as it becomes very popular and stable. Linux divides the interrupt service into two steps: Top Half and Bottom Half. When the interrupt occurs, Because of this Bottom Half which is not handled immediately, Linux is not a real-time system. Transforming Linux system into a real-time system, however, is a very difficult and time-consuming task because we have to modify the kernel in many places to ensure its correctness under repeated reentering events. We suggest limiting the effort to a certain specific interrupt, for example network interrupt, instead of trying to provide real-time handling for all interrupts. The scope is limited, and we can control the amount of shared data structures among the reentering kernel threads. We identify a special packet that requires real-time treatment and process it inside the Top Half without delaying. This thesis explains the algorithm and shows how it is implemented in Linux.