Bridging the gap between Computer Science and Electrical Engineering is the tangible hardware on which computation occurs and the tangible networks over which information flows. Research on modern computer systems and data networks concentrates primarily on speed, efficiency, and bandwidth, yet must also address the interface of the hardware to higher-level software, such as operating systems, database systems and compilers. And, of course, it must also be correct; verification of proper behavior is an essential part of computer systems design.
Database systems provide an environment for storage and retrieval of both structured and semi-structured data. Such systems were originally designed for use in business-type applications. Today, however, they are being utilized in many other application domains, including scientific computing, networking, and bioinformatics. Research topics at Yale include transaction management, data warehousing, Web-scale databases, real-time systems, multimedia systems, approximate queries, and data mining.
The role of operating systems has evolved over time, from sharing one device’s resources among many users in the mainframe era, to providing convenient user interface, storage, and networking abstractions in the personal computer era. As we transition to the ubiquitous computing era, operating systems must now manage a user’s information and computation across many computers and devices. Yale is developing new operating system architectures, application environments, and security frameworks to meet today’s challenges across the computing spectrum, from mobile personal devices to large-scale Internet services built on grids of many-core processors.
Computer networks allow computers to communicate with one another, and of course form the backbone of the Internet. Although computer networks are becoming a critical infrastructure of our information-based society, they still have not achieved a reliability level of the traditional telephone networks. Research on computer networks at Yale concentrates on designing highly robust and efficient Internet backbone networks, by combining computer science with optimization, economics, and game theory techniques. Besides backbone network management, projects at Yale also address application specific issues. Peer-to-peer (P2P) is emerging as a new paradigm for network application development, as witnessed by the wide usage of P2P file-sharing and video-streaming applications. However, these applications not only generate a large volume of traffic, but also may unnecessarily spread traffic all across the whole Internet, leading to inefficiency. Research projects at Yale are designing effective architecture and algorithms to improve both P2P application performance and Internet operation efficiency.