The 31-year-old right-hander will receive $14.5 million in each of the 2013 and 2014 seasons, with incentives that could enable him to exercise a $15 million players' option in 2015.
Peavy will get a $4 million buyout payment due under terms of his previous contract, spread out between 2016-19, White Sox Senior Vice President/General Manager Rick Hahn said.
"Early on in this process, Jake expressed his strong desire to remain with the White Sox, and we're happy to reach a deal that keeps him at the top end of our rotation and his influence in our clubhouse for at least the next two years," Hahn said.
Peavy went 11-12 with a 3.37 ERA and 194 strikeouts in 32 starts last season, ranking among the American League leaders in quality starts, complete games and innings pitched (219).
He boasts an 120-93 record with a 3.46 ERA and 1,748 strikeouts over 283 games in 11 seasons with the San Diego Padres and White Sox.