If you are compiling core-sato-image yocto root filesystem, then you might have observed that it compile lot of development environment ( ubuntu ) specific packages which are required to compile the filesystem. So, if you are compiling the file-system again and again during the development, it may take lot of time to compile those native packages.
So this can be avoided by adding ASSUME_PROVIDED in the meta/conf/bitbake.conf.
For example, you want to save time on compiling git everytime, since you already have git & uboots mkimage installed on your Ubuntu, then you can add an option as,
ASSUME_PROVIDED = "\
git-native \
u-boot-mkimage \
"
As per Yocto project reference manual ASSUME_PROVIDED is defined as,
ASSUME_PROVIDED – Lists recipe names (PN values) BitBake does not attempt to build. Instead, BitBake assumes these recipes have already been built.
In OpenEmbedded-Core, ASSUME_PROVIDED mostly specifies native tools that should not be built. An example is git-native, which when specified, allows for the Git binary from the host to be used rather than building git-native.