Cellular systems are expected to play a fundamental role in the future Machine-to-Machine (M2M) networks, which could inherit crucial benefits from the former, such as ubiquitous coverage and global internetworking. However, unique features of M2M communications, such as the larger number of connected devices and the diversity of applications, require specific enhancements to these cellular systems. Because of the nature of most of M2M applications, a large number of uplink transmissions is expected, rendering uplink scheduling as an essential issue towards supporting M2M communications via cellular networks. We propose two scheduling schemes for the uplink of LTE-based cellular systems, which take into account both the channel conditions and the maximum allowed delay of each device requesting to be served. In contrast to other scheduling algorithms no classes of devices are formed, but the exact delay constraint of each device is considered, approaching the requirements of M2M communications in a more realistic way. This way, the number of effectively served requests increases, while it becomes possible to exploit the exact delay constraints in order to put the devices in sleep modes, until next transmissions. It is also shown that dividing the devices into a limited number of QoS classes deteriorates the system's performance.