The part of the floor you see sits on top of the subfloor. That is, in turn, supported by large boards called joists. If there aren’t enough screws holding the subfloor to the joists or if for other reasons there are gaps between the joists and the subfloor, squeaking can occur. You can fill these gaps with hardwood shims if you have access to the subfloor from below (if it’s unfinished).
If you don’t have access from below, you can pick up a “squeak away” from the hardware store and fix from the top side of the floor.