为了桥接语义鸿沟,提升I/O性能,需要对执行不同类型负载的虚拟CPU(vCPU)采取不同的调度策略,故而虚拟CPU调度算法亟需优化.基于KVM虚拟化平台提出一种基于任务分类的虚拟CPU调度模型STC(virtual CPU scheduler based on task classification),它将虚拟CPU(vCPU)和物理CPU分别分为两个类型,分别为short vCPU和long vCPU,以及short CPU和long CPU,不同类型的vCPU分配至对应类型的物理CPU上执行.同时,基于机器学习理论,STC构建分类器,通过提取任务行为特征将任务分为两类,I/O密集型的任务分配至short vCPU上,而计算密集型任务则分配至long vCPU上.STC在保证计算性能的基础上,提高了I/O的响应速度.实验结果表明,STC与系统默认的CFS相比,网络延时降低18%,网络吞吐率提高17% ~25%,并且保证了整个系统的资源共享公平性.