scheduling and resource allocation