A processor of a multi-core processor comprising multiple modules, the modules comprising: an acquiring module, configured to acquire a working frequency of at least one other processor of the multi-core processor than one processor of the multi-core processor that requests data, a difference between a cache hit ratio value corresponding to the one processor and a cache hit ratio value corresponding to the at least one other processor, a cache hit ratio value corresponding to the one processor, and usage rates of N processors in the multi-core processor; a judging module, configured to determine, when a current working mode of the multi-core processor is an asymmetric multiprocessing, ASMP, mode, whether the working frequency of the at least one other processor than the one processor that requests data is less than a first frequency, and whether the difference between the cache hit ratio value corresponding to the one processor and the cache hit ratio value corresponding to the at least one other processor is greater than or equal to a first threshold; and configured to determine, when the current working mode of the multi-core processor is an SMP mode, whether the cache hit ratio value corresponding to the one processor is greater than or equal to a second threshold, whether the usage rates are unbalanced between the processors in the multi-core processor, and whether usage rates of N processors in the multi-core processor are greater than a first usage threshold; and a switching module, configured to: when the judging module determines that the current working mode of the multi-core processor is the asymmetric multiprocessing, ASMP, mode, the working frequency of the at least one other processor than the one processor that requests data is less than the first frequency, and the difference between the cache hit ratio value corresponding to the one processor and the cache hit ratio value corresponding to the at least one other processor is greater than or equal to the first threshold, switch the working mode of the multi-core processor to the symmetric multiprocessing, SMP, mode; and when the judging module determines that the current working mode of the multi-core processor is the SMP mode, the cache hit ratio value corresponding to the one processor is greater than or equal to the second threshold, the usage rates are unbalanced between the processors in the multi-core processor, and the usage rates of the N processors in the multi-core processor are greater than the first usage threshold, switch the working mode of the multi-core processor to the ASMP mode, wherein N is greater than or equal to 1, and is less than or equal to a quantity of processors in the multi-core processor minus one. an acquiring module, configured to acquire a working frequency of at least one other processor of the multi-core processor than one processor of the multi-core processor that requests data, a difference between a cache hit ratio value corresponding to the one processor and a cache hit ratio value corresponding to the at least one other processor, a cache hit ratio value corresponding to the one processor, and usage rates of N processors in the multi-core processor; a judging module, configured to determine, when a current working mode of the multi-core processor is an asymmetric multiprocessing, ASMP, mode, whether the working frequency of the at least one other processor than the one processor that requests data is less than a first frequency, and whether the difference between the cache hit ratio value corresponding to the one processor and the cache hit ratio value corresponding to the at least one other processor is greater than or equal to a first threshold; and configured to determine, when the current working mode of the multi-core processor is an SMP mode, whether the cache hit ratio value corresponding to the one processor is greater than or equal to a second threshold, whether the usage rates are unbalanced between the processors in the multi-core processor, and whether usage rates of N processors in the multi-core processor are greater than a first usage threshold; and a switching module, configured to: when the judging module determines that the current working mode of the multi-core processor is the asymmetric multiprocessing, ASMP, mode, the working frequency of the at least one other processor than the one processor that requests data is less than the first frequency, and the difference between the cache hit ratio value corresponding to the one processor and the cache hit ratio value corresponding to the at least one other processor is greater than or equal to the first threshold, switch the working mode of the multi-core processor to the symmetric multiprocessing, SMP, mode; and when the judging module determines that the current working mode of the multi-core processor is the SMP mode, the cache hit ratio value corresponding to the one processor is greater than or equal to the second threshold, the usage rates are unbalanced between the processors in the multi-core processor, and the usage rates of the N processors in the multi-core processor are greater than the first usage threshold, switch the working mode of the multi-core processor to the ASMP mode, wherein N is greater than or equal to 1, and is less than or equal to a quantity of processors in the multi-core processor minus one.