Cache the isc_os_ncpu() result
It was discovered that on some platforms (f.e. Alpine Linux with MUSL) the result of isc_os_ncpus() call differ when called before and after we drop privileges. This commit changes the isc_os_ncpus() call to cache the result from the first call and thus always return the same value during the runtime of the named. The first call to isc_os_ncpus() is made as soon as possible on the library initalization.
Closes #2819 (closed)