Knowledge (XXG)

ULE scheduler

Source 📝

104: 998: 167:
version 5, but it was disabled by default for a time in favor of the traditional BSD scheduler until it reached maturity. The original BSD scheduler does not make full use of
1039: 208: 191:
environments, as well as interactive response under heavy load. The user may switch between the BSD scheduler and ULE using a kernel compile-time tunable.
634: 1063: 390: 691: 1032: 807: 679: 822: 422: 973: 1068: 953: 1025: 570: 968: 963: 454: 323: 75: 180: 172: 56: 349: 175:, which is important in modern computing environments. The primary goal of the ULE project is to make better use of 844: 176: 168: 616: 117: 265: 514: 469: 797: 737: 649: 491: 153: 1058: 542: 415: 923: 831: 575: 606: 802: 474: 459: 229: 782: 777: 449: 386: 380: 1009: 1005: 997: 792: 626: 594: 408: 160: 136: 124: 644: 565: 103: 908: 772: 767: 188: 163:(versions 7.1 and forward) for the i386 and AMD64 architectures. It was introduced in 1052: 856: 674: 582: 464: 301: 250: 903: 747: 599: 527: 184: 141: 876: 812: 669: 958: 851: 787: 659: 555: 327: 27: 913: 886: 881: 871: 866: 727: 664: 654: 948: 891: 861: 722: 717: 611: 441: 432: 164: 157: 129: 84: 400: 898: 742: 732: 712: 707: 684: 522: 936: 931: 587: 532: 944: 639: 560: 550: 499: 404: 940: 839: 382:
The Design and Implementation of the FreeBSD Operating System
1013: 63: 183:
environments. ULE should improve performance in both
288: 922: 830: 821: 760: 700: 625: 541: 513: 490: 483: 440: 135: 123: 113: 74: 55: 36: 26: 1033: 416: 379:McKusick, M. K.; Neville-Neil, G. V. (2004). 8: 21: 1040: 1026: 827: 487: 423: 409: 401: 251:"FreeBSD 7.1-RELEASE Release Announcement" 102: 20: 354:Chapter 8 Configuring the FreeBSD Kernel 200: 16:Scheduler for FreeBSD operating system 266:"ULE: A Modern Scheduler for FreeBSD" 7: 994: 992: 302:"FreeBSD 7.0-RELEASE Release Notes" 1012:. You can help Knowledge (XXG) by 385:. Pearson Education. p. 153. 14: 996: 289:McKusick & Neville-Neil 2004 1064:Processor scheduling algorithms 1: 455:FreeBSD Documentation License 255:retrieved on 5 January 2009 61:3.0 (27 February 2008) 1085: 991: 291:, 4.4. Thread Scheduling. 70: 51: 40:26 January 2003 617:Highly Available STorage 209:"sched_ule(4) man page" 1069:Operating system stubs 1008:-related article is a 798:Marshall Kirk McKusick 974:PlayStation Vita OS 23: 954:Nintendo Switch OS 803:Diomidis Spinellis 475:Kernel Normal Form 460:FreeBSD Foundation 350:"FreeBSD Handbook" 28:Original author(s) 1021: 1020: 986: 985: 982: 981: 778:Poul-Henning Kamp 756: 755: 450:FreeBSD Core Team 392:978-0-321-68003-7 230:"FreeBSD CVS log" 147: 146: 1076: 1042: 1035: 1028: 1006:operating-system 1000: 993: 969:PlayStation 4 OS 964:PlayStation 3 OS 828: 488: 425: 418: 411: 402: 396: 365: 364: 362: 360: 346: 340: 339: 337: 335: 326:. Archived from 322:Roberson, Jeff. 319: 313: 312: 310: 308: 298: 292: 286: 280: 279: 277: 275: 270: 262: 256: 254: 247: 241: 240: 238: 236: 226: 220: 219: 217: 215: 205: 161:operating system 125:Operating system 106: 101: 98: 96: 94: 92: 90: 88: 86: 66: 47: 45: 24: 1084: 1083: 1079: 1078: 1077: 1075: 1074: 1073: 1049: 1048: 1047: 1046: 989: 987: 978: 918: 817: 752: 696: 621: 537: 509: 479: 470:Version History 436: 429: 399: 393: 378: 374: 369: 368: 358: 356: 348: 347: 343: 333: 331: 321: 320: 316: 306: 304: 300: 299: 295: 287: 283: 273: 271: 268: 264: 263: 259: 249: 248: 244: 234: 232: 228: 227: 223: 213: 211: 207: 206: 202: 197: 152:is the default 109: 83: 62: 43: 41: 37:Initial release 17: 12: 11: 5: 1082: 1080: 1072: 1071: 1066: 1061: 1051: 1050: 1045: 1044: 1037: 1030: 1022: 1019: 1018: 1001: 984: 983: 980: 979: 977: 976: 971: 966: 961: 956: 951: 934: 928: 926: 920: 919: 917: 916: 911: 909:Gentoo/FreeBSD 906: 901: 896: 895: 894: 889: 879: 874: 869: 864: 859: 854: 849: 848: 847: 836: 834: 825: 819: 818: 816: 815: 810: 805: 800: 795: 790: 785: 780: 775: 773:Jordan Hubbard 770: 768:Matthew Dillon 764: 762: 758: 757: 754: 753: 751: 750: 745: 740: 735: 730: 725: 720: 715: 710: 704: 702: 698: 697: 695: 694: 689: 688: 687: 682: 672: 667: 662: 657: 652: 647: 642: 637: 635:802.11 drivers 631: 629: 623: 622: 620: 619: 614: 609: 604: 603: 602: 592: 591: 590: 580: 579: 578: 573: 568: 563: 558: 547: 545: 539: 538: 536: 535: 530: 525: 519: 517: 515:Virtualisation 511: 510: 508: 507: 502: 496: 494: 485: 481: 480: 478: 477: 472: 467: 462: 457: 452: 446: 444: 438: 437: 430: 428: 427: 420: 413: 405: 398: 397: 391: 375: 373: 370: 367: 366: 341: 330:on 17 May 2008 314: 293: 281: 257: 242: 221: 199: 198: 196: 193: 189:multiprocessor 145: 144: 139: 133: 132: 127: 121: 120: 115: 111: 110: 108: 107: 80: 78: 72: 71: 68: 67: 59: 57:Stable release 53: 52: 49: 48: 38: 34: 33: 30: 15: 13: 10: 9: 6: 4: 3: 2: 1081: 1070: 1067: 1065: 1062: 1060: 1057: 1056: 1054: 1043: 1038: 1036: 1031: 1029: 1024: 1023: 1017: 1015: 1011: 1007: 1002: 999: 995: 990: 975: 972: 970: 967: 965: 962: 960: 959:OpenServer 10 957: 955: 952: 950: 946: 942: 938: 935: 933: 930: 929: 927: 925: 921: 915: 912: 910: 907: 905: 902: 900: 897: 893: 890: 888: 885: 884: 883: 880: 878: 875: 873: 870: 868: 865: 863: 860: 858: 857:DragonFly BSD 855: 853: 850: 846: 843: 842: 841: 838: 837: 835: 833: 829: 826: 824: 820: 814: 811: 809: 808:Robert Watson 806: 804: 801: 799: 796: 794: 791: 789: 786: 784: 781: 779: 776: 774: 771: 769: 766: 765: 763: 759: 749: 746: 744: 741: 739: 736: 734: 731: 729: 726: 724: 721: 719: 716: 714: 711: 709: 706: 705: 703: 699: 693: 690: 686: 683: 681: 678: 677: 676: 673: 671: 668: 666: 663: 661: 658: 656: 653: 651: 648: 646: 643: 641: 638: 636: 633: 632: 630: 628: 624: 618: 615: 613: 610: 608: 605: 601: 598: 597: 596: 593: 589: 586: 585: 584: 581: 577: 574: 572: 569: 567: 564: 562: 559: 557: 554: 553: 552: 549: 548: 546: 544: 540: 534: 531: 529: 526: 524: 521: 520: 518: 516: 512: 506: 505:ULE scheduler 503: 501: 498: 497: 495: 493: 489: 486: 482: 476: 473: 471: 468: 466: 465:FreeBSD Ports 463: 461: 458: 456: 453: 451: 448: 447: 445: 443: 439: 434: 426: 421: 419: 414: 412: 407: 406: 403: 394: 388: 384: 383: 377: 376: 371: 355: 351: 345: 342: 329: 325: 318: 315: 303: 297: 294: 290: 285: 282: 267: 261: 258: 252: 246: 243: 231: 225: 222: 210: 204: 201: 194: 192: 190: 186: 182: 178: 174: 170: 166: 162: 159: 155: 151: 143: 140: 138: 134: 131: 128: 126: 122: 119: 116: 112: 105: 100: 82: 81: 79: 77: 73: 69: 65: 60: 58: 54: 50: 39: 35: 32:Jeff Roberson 31: 29: 25: 22:ULE scheduler 19: 1059:BSD software 1014:expanding it 1003: 988: 904:GNU/kFreeBSD 600:Soft updates 504: 381: 357:. Retrieved 353: 344: 332:. Retrieved 328:the original 317: 305:. Retrieved 296: 284: 272:. Retrieved 260: 245: 233:. Retrieved 224: 212:. Retrieved 203: 185:uniprocessor 149: 148: 142:BSD 2-clause 18: 924:proprietary 877:MidnightBSD 832:open-source 823:Derivatives 813:Dru Lavigne 793:Sam Leffler 783:Mike Karels 334:2 September 214:2 September 64:[±] 1053:Categories 852:DesktopBSD 788:Ben Laurie 627:Networking 492:Scheduling 484:Subsystems 195:References 114:Written in 76:Repository 44:2003-01-26 645:Bluetooth 583:disklabel 324:"ULE 2.0" 235:27 August 154:scheduler 914:XigmaNAS 887:OPNsense 882:m0n0wall 872:GhostBSD 867:FreeSBIE 728:portsnap 665:Netgraph 655:IPFilter 359:18 March 156:for the 949:watchOS 892:pfSense 862:FreeNAS 723:OpenBSM 718:OpenPAM 543:Storage 442:FreeBSD 435:Project 433:FreeBSD 372:Sources 307:23 June 274:23 June 165:FreeBSD 158:FreeBSD 137:License 130:FreeBSD 42: ( 947:, and 899:TrueOS 845:Darwin 761:People 748:systat 743:moused 733:kqueue 713:DTrace 708:busdma 685:pfsync 523:chroot 389:  95:/sched 1004:This 937:macOS 932:Junos 701:Other 588:fdisk 576:vinum 556:raid5 533:bhyve 269:(PDF) 93:/kern 1010:stub 945:tvOS 692:SCTP 680:CARP 670:NDIS 660:ipfw 640:ALTQ 571:LVM2 566:geli 561:GBDE 551:GEOM 528:jail 500:ALTQ 431:The 387:ISBN 361:2009 336:2008 309:2008 276:2008 237:2008 216:2008 187:and 179:and 97:_ule 91:/sys 941:iOS 840:XNU 738:KLD 650:BPF 612:ZFS 607:VFS 595:UFS 181:SMT 177:SMP 173:SMT 171:or 169:SMP 150:ULE 87:.su 85:bxr 1055:: 943:, 939:, 675:pf 352:. 99:.c 89:/f 1041:e 1034:t 1027:v 1016:. 424:e 417:t 410:v 395:. 363:. 338:. 311:. 278:. 253:. 239:. 218:. 118:C 46:)

Index

Original author(s)
Stable release
[±]
Repository
bxr.su/f/sys/kern/sched_ule.c
Edit this at Wikidata
C
Operating system
FreeBSD
License
BSD 2-clause
scheduler
FreeBSD
operating system
FreeBSD
SMP
SMT
SMP
SMT
uniprocessor
multiprocessor
"sched_ule(4) man page"
"FreeBSD CVS log"
"FreeBSD 7.1-RELEASE Release Announcement"
"ULE: A Modern Scheduler for FreeBSD"
McKusick & Neville-Neil 2004
"FreeBSD 7.0-RELEASE Release Notes"
"ULE 2.0"
the original
"FreeBSD Handbook"

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.