MOUNTAIN VIEW, Calif. (TheStreet) - As a new round of Android smartphones hit the market, Google (GOOG - Get Report) is drawing criticism from developers who say the company has strayed too far from its original source code, making it more difficult to design components and applications for the popular phones.

When Google ( GOOG - Get Report) unveiled Android, developers cheered the decision to base the mobile operating system on Linux because it would allow developers to create custom applications. Google has since upgraded Android, enhancing its power use and adding features, but those changes weren't accepted into the latest version of Linux's central code repository, or kernel, because they diverged from the code too much. That means Android's basic code is no longer part of the developer-friendly Linux kernel.

Some developers say Google's actions could slow down the production of Android phones. Smartphone makers and service carriers such as Verizon ( VZ), Motorola ( MOT) and HTC have been rolling out Android phones to compete with Apple's ( AAPL) iPhone. Businesses of all sizes have been taking advantage of Google's open system to reach the millions of people buying Android devices.

"I tried to work with them a bit on this, as did other developers, but due to time and resource constraints on their side, and an inability on our side to make changes that would require core Android system changes, nothing ever got accomplished," says Greg Kroah-Hartman, a Novell ( NOVL) fellow and longtime Linux developer.

It's not uncommon for individual companies to tweak Linux code for use in phones and other devices, or for those changes to be excluded from the Linux repository. "You can't ship a nice phone without customizing the kernel to the hardware, and these changes are what makes the code for a platform divert from the mainline tree," said Chris DiBona, the open source programs manager at Google in an e-mail message, when asked about Android's divergence from the Linux kernel.

The problem is that when a company's code is excluded from the Linux kernel, that company has to spend extra time and money on software development. The open source Linux community is no longer doing the bulk of the work for free.

And in the case of Android, it's not just Google being excluded from the kernel; all the companies that make phones for Android are excluded, too. Google announced Android as part of a consortium called the Open Handset Alliance, which includes Texas Instruments ( TXN), Motorola, Samsung, and Qualcomm ( QCOM). All of those companies contributed to the development of Android when it was entwined with Linux. "Google's actions caused a ripple effect down the Android community, which has caused a number of these companies that were having these problems come to the Linux kernel community to ask what we could do to help resolve them," Kroah-Hartman says.

"There are lots of other companies that are building and shipping and supporting Android systems," Kroah-Hartman says. "To get Android to work properly on their hardware, for their different device types, they too need to take these changes. This means it's more expensive and time-consuming for these companies to develop Android phones than it would be if the Android kernel were still part of the Linux kernel."

Several Linux kernel developers plan to meet with several Google developers next month to hash out the issue in person, an event sponsored by the Linux Foundation. DiBona predicts Android will rejoin the main kernel within a year or two.

Keeping track of Linux's and Android's kernels can be annoying for small businesses that sell devices and applications for smartphones, if only because it means increasing the time spent on quality control.

"They'll probably become less similar over time," says Ron Seide, president of Summit Data Communications, a small company in Akron, Ohio, that makes radio modules for mobile devices. "It's not the end of the world, but it's a pain, and uncharacteristically very uncool of Google."

-- Reported by Carmen Nobel in Boston.