{"title":"“不稳定线程”内核接口,用于最小化线程切换的开销","authors":"S. Inohara, Kazuhiko Kato, T. Masuda","doi":"10.1109/IPPS.1993.262872","DOIUrl":null,"url":null,"abstract":"The performance of threads is limited primarily by the overhead of two kinds of switching: vertical switching (user/kernel domain switching) and horizontal switching (context switching between threads). Although these switchings are indispensable in some situations, existing thread mechanisms involve unnecessary switchings on multiprogrammed systems, because of inappropriate interfaces between the operating system kernel and user-level programs. This paper presents a set of interfaces between the kernel and user-level programs that minimizes the overhead of the two kinds of switchings. The kernel provides 'unstable threads,' which are controlled solely by the kernel, while each user-level program monitors them and gives suggestions on their activities to the kernel through a shared memory area between the kernel and user address spaces. This new way of separating thread management minimizes the overhead of vertical and horizontal switchings.<<ETX>>","PeriodicalId":248927,"journal":{"name":"[1993] Proceedings Seventh International Parallel Processing Symposium","volume":"86 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1993-04-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"'Unstable threads' kernel interface for minimizing the overhead of thread switching\",\"authors\":\"S. Inohara, Kazuhiko Kato, T. Masuda\",\"doi\":\"10.1109/IPPS.1993.262872\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The performance of threads is limited primarily by the overhead of two kinds of switching: vertical switching (user/kernel domain switching) and horizontal switching (context switching between threads). Although these switchings are indispensable in some situations, existing thread mechanisms involve unnecessary switchings on multiprogrammed systems, because of inappropriate interfaces between the operating system kernel and user-level programs. This paper presents a set of interfaces between the kernel and user-level programs that minimizes the overhead of the two kinds of switchings. The kernel provides 'unstable threads,' which are controlled solely by the kernel, while each user-level program monitors them and gives suggestions on their activities to the kernel through a shared memory area between the kernel and user address spaces. This new way of separating thread management minimizes the overhead of vertical and horizontal switchings.<<ETX>>\",\"PeriodicalId\":248927,\"journal\":{\"name\":\"[1993] Proceedings Seventh International Parallel Processing Symposium\",\"volume\":\"86 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1993-04-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"[1993] Proceedings Seventh International Parallel Processing Symposium\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/IPPS.1993.262872\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"[1993] Proceedings Seventh International Parallel Processing Symposium","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IPPS.1993.262872","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
'Unstable threads' kernel interface for minimizing the overhead of thread switching
The performance of threads is limited primarily by the overhead of two kinds of switching: vertical switching (user/kernel domain switching) and horizontal switching (context switching between threads). Although these switchings are indispensable in some situations, existing thread mechanisms involve unnecessary switchings on multiprogrammed systems, because of inappropriate interfaces between the operating system kernel and user-level programs. This paper presents a set of interfaces between the kernel and user-level programs that minimizes the overhead of the two kinds of switchings. The kernel provides 'unstable threads,' which are controlled solely by the kernel, while each user-level program monitors them and gives suggestions on their activities to the kernel through a shared memory area between the kernel and user address spaces. This new way of separating thread management minimizes the overhead of vertical and horizontal switchings.<>