The scheduler sets up the order of embedded computer tasks to ensure that a higher-priority task can preempt a lower-priority task to maintain a deterministic response. The most popular scheduling technique is preemptive, prioritized scheduling where tasks can interrupt a lower-priority task and continue execution until finished or until preempted by a higher-priority task. The development tool chain is another big issue in the selection of an OS. Embedded computer developers will spend most of their software design and debug efforts interacting with the Integrated Development Environment (IDE) to gain quick access to the editor, compiler, linker, downloader, and runtime tools. Most vendors provide a full IDE including the source code editor, the code manager, links to the compiler and linker, software to download code to the target platform, and one or more debuggers.