Norm Hutchinson

Associate Professor

Office
ICCS
319
Office Phone #
604-822-8188

Academic Information

B.Sc., University of Calgary (1982); M.Sc., University of Washington (1985); Ph.D., University of Washington (1987); Visiting Assistant Professor, University of Arizona. (1987-1988); Assistant Professor, University of Arizona (1988-1990); Assistant Professor, University of British Columbia (1991 - 1998); Associate Professor, UBC (1998 - ).

Research Areas

systems

Interests

My primary research interest is in the identification of abstractions that assist in the construction of concurrent and distributed programs. A distributed execution environment consisting of a (potentially large) number of independent computers communicating over a network offers the potential for supporting very large, very reliable applications. However, such an environment has hitherto been very complex to program. Some of the contributing factors include:

  • unreliable communication
  • no consistent notion of time
  • failure of a part of the system (one or more processors), while the rest of the system continues to execute.

Abstractions can be defined at a number of different levels to assist in the construction of such applications. Programming language abstractions include replicated objects, mobile objects, and exception mechanisms that allow the application to be aware of the changes in configuration of the underlying system. At the operating system level, similar mechanisms for replication, mobility, and configuration management can be defined. Communication protocols are the building blocks from which all these abstractions are implemented.

Courses

2024 Winter
CPSC_V 110 - Computation, Programs, and Programming
CPSC_V 210 - Software Construction
2023 Winter
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 110 - Computation, Programs, and Programming
CPSC_V 110 - Computation, Programs, and Programming
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 313 - Computer Hardware and Operating Systems
CPSC_V 313 - Computer Hardware and Operating Systems
2022 Winter
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 313 - Computer Hardware and Operating Systems
CPSC_V 313 - Computer Hardware and Operating Systems
2021 Winter
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 317 - Introduction to Computer Networking
CPSC_V 313 - Computer Hardware and Operating Systems
CPSC_V 313 - Computer Hardware and Operating Systems
2020 Winter
CPSC_V 210 - Software Construction
CPSC_V 110 - Computation, Programs, and Programming
2019 Winter
CPSC_V 110 - Computation, Programs, and Programming
CPSC_V 210 - Software Construction
2017 Winter
CPSC_V 411 - Introduction to Compiler Construction
2016 Winter
CPSC_V 210 - Software Construction
CPSC_V 210 - Software Construction
2015 Winter
CPSC_V 210 - Software Construction
2014 Winter
CPSC_V 411 - Introduction to Compiler Construction
CPSC_V 317 - Introduction to Computer Networking