I'll start by saying I don't know exactly how Microsoft and Intel plan to do the scheduling. But, I can certainly speculate some
possible simple and useful methods. Maybe none of these will happen, but I can certainly see great uses that don't require much effort at all with thread scheduling (some ideas actually make thread scheduling easier):
1) Windows gets its own little core(s). Now everything can be always-on. Now, the GUI thread is always instantly responsive (no more visible lag, mouse lag, or keyboard lag when the CPU is doing hard work).
2) Security gets its own little core(s). Virus / threat scanners can run 100% of the time on 100% of the files without affecting your main programs. Imagine the computer constantly performing facial recognition to verify that you are the correct person to use that account without any performance penalty on the other programs.
3) File system gets its own little core(s). Even better/faster data access. Full and proper encryption on everything without a performance hit.
4) Everything runs on the little cores for ultra-low power until you need to bring out the big guns.
5) AVX tasks are offloaded to the little cores so the big cores don't have to run at a slower speed (no more AVX offset).
6) AVX-512 threads are on the big cores and the other threads are on the little cores, so AVX-512 can be much more utilized. No more excuse to not include AVX-512 due to possible performance penalties on the rest of the threads (similar to #5, no more AVX frequency offset).
7) The thread schedule could be built around the priority system that programmers already give.
https://docs.microsoft.com/en-us/dotnet/api/system.threading.threadpriority?view=netframework-4.7.2&f1url=?appId=Dev16IDEF1&l=EN-US&k=k(System.Threading.ThreadPriority);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.7.2);k(DevLang-csharp)&rd=true
8) Threads using the big cores are now balanced. Work loads across say 8 cores can be split equally since Windows won't be sharing a core(s). Right now you often have cores sitting idle waiting for other cores to finish up their task because the programmers can't know ahead of time what might be going on in the background. Thus, programmers never know how to best split up the workload. Moving the other tasks to the little cores makes the big cores better utilized since they can each do exactly their full share of work in the same amount of time.
9) New/newer computer features run on the little cores. Something like the Apple touch bar on their laptops or Cortana always running, etc.
10) Higher and longer turbo frequencies on the big cores, because the tasks that would normally be heating them up are on other parts of the CPU.