HOUSTON -- Houston's hitters were no match for Ubaldo Jimenez on Thursday night.

The only thing that slowed him down was the Houston weather on a hot, sticky night with the Minute Maid Park roof open.

Jimenez allowed one hit over seven innings and Troy Tulowitzki had a three-run homer as the Colorado Rockies beat the Astros 4-0 to break a three-game skid.

He could have lasted longer if not for leg cramps that began in the seventh inning.

"It was just because of the weather," he said. "It was so hot out here. The bullpen, it's like a sauna. The bullpen's covered and you lose a lot of water in your body."

The only hit Jimenez (8-1) allowed was Humberto Quintero's single to start the third inning. It came when third baseman Ian Stewart couldn't handle the hard-hit grounder barehanded. Jimenez, who improved his major league-low ERA to 0.99, struck out four and walked two.

"He's really special," manager Jim Tracy said. "He's a big reason why with all the different things we've dealt with and all the different things that we are still sorting through, he's the reason why our heads are still fairly well above water. He's a big, big part of that."

Matt Belisle allowed one hit in the eighth before Manny Corpas did the same in the ninth to complete the shutout.

Lance Berkman walked with no outs in the fourth but Jimenez got out of that inning unscathed when Hunter Pence grounded into a double play after he retired Carlos Lee. He sailed through the next three innings, retiring the next nine batters.

His only trouble came when he came up a bit gimpy on a run to first base when he reached on an error by Pedro Feliz in the seventh inning. He walked around gingerly for a couple of minutes while trainers talked to him, but he remained in the game.

Jimenez struck out the first five batters before walking Feliz. Still, he said he wasn't feeling great early.

"At the beginning of the game I didn't feel good because I was throwing everything high," said Jimenez, who threw the season's only no-hitter, in April at Atlanta. "But as the game went on, I started getting better. In the fifth and sixth inning I started pounding the strike zone and throwing my breaking ball for strikes."

Quintero was impressed with Jimenez.

"He is a good pitcher," he said. "He can throw anything. He was throwing his sinker at 98 [mph], slider, change up, everything."

Houston starter Roy Oswalt (2-6) extended his streak of quality starts to nine after allowing two earned runs and three hits in six innings. That's the longest such streak to start a season for an Astro since Roger Clemens had nine in a row in 2005. The Astros have struggled to score runs with Oswalt pitching and he entered the game with the lowest run support in the National League at 2.29 runs a game.

Thursday was the sixth time the Astros have been shut out this season.

Houston opened the game with an error when Oswalt couldn't handle a short flip from Berkman on the game's first at-bat, allowing Carlos Gonzalez to reach first. Todd Helton walked with one out before Tulowitzki's shot to the Crawford Boxes in left field made it 3-0.

"I threw the ball well," Oswalt said. "I thought I had good stuff coming out there in the first inning. I just had that one pitch. I made good pitches to him before he hit the home run that he didn't hit."

A single by Brad Hawpe in the eighth drove in a run to make it 4-0.

Game notes

Houston LHP Tim Byrdak, who is on the DL with a hamstring injury and who has also had back problems, will begin a rehabilitation assignment with Triple-A Round Rock on Friday. He is scheduled to pitch one inning on Friday and another one on Sunday. ... Oswaldo Navarro, whose contract the Astros purchased from Triple-A Round Rock on Wednesday, struck out as a pinch hitter in the sixth. ... Helton's double in the eighth inning tied him with Joe Cronin for 40th on the all-time list with 515.