Resume of Arthur Sorkin art@web-oasis.com Cell: 480-220-1070 12340 Footpath Trail Los Gatos, CA 95030 940 N. Barkley Mesa, AZ 85203 SPECIALTIES * All aspects of system software, including operating systems, storage management, compilers, assemblers, debuggers, and linkers. * Computer security, network security, information assurance, software protection, and cryptography. * Scientific programming, including algorithm development, simulation and modeling, and parallel processing. * Utilities, tools, and porting. * Patent prior art searches. EDUCATION * Ph.D in Computer Science - UCLA, 1977 (IBM Doctoral Fellowship ----- 10/75 - 6/76) * M.A. in Mathematics - UCSD CERTIFICATIONS Registered Patent Agent 28270. Senior Member, IEEE. EMPLOYMENT * 3PLUS1 Technology, Inc, Independent Consultant (2/06 to date) Working on a compiler for a proprietary data flow language. * Riverside Research Institute, Independent Consultant (10/05 to 12/06) Did a study of the state of the art of reverse engineering tools and techniques and their interaction with compiler optimizations for the U.S. Air Force. * TRR/Fortify Software, Consultant (11/03 - 3/05 + part-time to date) Worked on a contract for the U.S. Air Force's Software Protection Initiative (AT-SPI) investigating and developing tools to analyze and inject code into binaries to protect them from theft or unauthorized use. Also worked on Fortify's computer security tools, including the riskanalyzer tool to analyze Linux and Solaris ELF, Windows PE, and MacOS Mach-O binaries for possible security vulnerabilities. * GECO, Inc., Independent Consultant (8/03 - 11/03) Worked on a project for Honeywell/Boeing to patch Apache helicopter avionics software PowerPC ELF object modules to bypass a hardware problem. * Oxford Int'l/Teja., Consultant (7/02-10/02) Working on code generation in Teja's NP tool for IXP2000 written in Java/JBuilder. * Oxford Int'l/Intel., Consultant (8/01-6/02) Worked in the compiler group of the Network Processor Division on the 'microC' compiler for Intel's IXP1200 and IXP2000 family of parallel network processors. Worked with both EDG front-end and Intel back-end. Developed new code, fixed outstanding bugs, did unit testing and developed regression tests. C/Visual C++/Windows/cygwin. * H.L. Yoh/TeraLogic, Inc., Consultant (10/00-5/01) Did a GNU gcc C compiler, gas assembler, gnu linker, gdb debugger, and other tool port for a new audio DSP. Modified Teralogic simulator to make it ELF compatible. * U.S. Interactive (Softplus, Inc.), Independent Consultant (7/99-9/00) Worked on custom modifications to the Sun C compiler and dbx to implement Unified Parallel C (UPC) on a Sun subcontract to a government agency. * Tharas Systems, Independent Consultant (12/98-12/99) Worked on the compiler and run-time for a hardware Verilog accelerator. * Oxford Assoc./VERITAS Software, Consultant (5/97-11/98) Worked on Solaris kernel code in Veritas's Volume Manager product. Fixed lock contention performance problems and did general kernel, daemon, and utility debugging. Worked on design and implementation of support framework for disk arrays under Windows NT and Unix. * Zycad, Inc., Independent Consultant (1/95-2/97) Worked on partitioning in compiler for Zycad Lightspeed parallel processor logic simulator. Did Solaris ports of XPLUS logic simulator tool suite and Solaris device driver. Did AIX 4.1.4 port of XPLUS tool suite and general debugging of SunOS, HPUX, and AIX software problems. * Web Oasis, Inc., President (6/96-date) Founded and set up this ISP/IPP and doing all SunOS and Solaris network and system administration. Responsible for all technical issues. * Quickturn Design Systems, Independent Consultant (8/96-12/96) Did an evaluation of available VHDL front-ends. Did a feasibility study for implementation of VHDL on Quickturn's emulation product. * Surf Software/Graham Technologies, Consultant (10/96-11/96) Did Solaris install scripts and package build for Graham's web server products using Solaris package add/remove tools. * Surf Software/SunLabs , Consultant (2/95-12/95) Did did two experimental PowerPC Solaris ports plus compiler, linker ports. Ported complete Solaris operating system, including Virtual Open Firmware, boot program, device drivers, cmd, lib, and kernel. Did second complete port of Solaris on PowerPC and helped bring up a new sun4m PowerPC OpenFirmware based machine. (See: http://research.sun.com/techrep/1995/annualreport95/chameleon.html) * Taos Mountain/Zycad, Inc., Consultant (7/94-12/94) Did libc and libm porting, some kernel and runtime porting, debugging support, and linker support for Zycad's ViP VHDL parallel processor. * TCN/IKOS, Consultant (7/94-6/95) Did a short VHDL compiler study and have provided occasional consulting on VHDL compiler related issues. * Philips Research, Palo Alto, CA, Independent Consultant (2/92-3/94) Investigated and solved a variety of compiler problems relating to a proprietary VLIW processor. Did gcc modifications and enhancements and custom C compiler optimizer, register allocator, and code generator development. * IBM Palo Alto Scientific Center, Palo Alto, CA, Independent Consultant (1/91 - 9/91) Designed and implemented modifications, enhancements, and bug fixes for IBM's AIX370 dbx debugger to support VS/Fortran. * C Cube Microsystems, San Jose, CA, Independent Consultant (11/90) Did a project status evaluation and feasibility study for a compiler, assembler, debugger system for a new product and wrote a proposal. * BT Tymnet, San Jose, CA, Independent Consultant (4/90) Reviewed a compiler optimization project's status and wrote a report making recommendations for improvements and modifications. * Pencom Systems/IBM AIX370 Project Office, Consultant (8/88-4/90) Responsible for the porting, debugging, and upgrading of as, ld, and dbx for IBM on their AIX370 and 4.3 RT Unix's. Designed and wrote a proposal for vector extensions to the C language in support of IBM's vector hardware for AIX370. * Tesuji, Inc., Los Gatos, CA 95030, President (4/87 - 2/92) Designed and implemented Fortran compiler global and local optimizer, global register allocator, and code generator, and application-specific compiler products and tools, including a full LR(1) parser generator system with state-of-the-art features. Designed the AXON neural net language and worked on the implementation of the first commercial AXON translator. * American Information Technology, Inc., Cupertino, CA 95014, Consulting Member of the Technical Staff (4/87 - 10/87) TRONCHIP "C" compilation system project leader. Did pcc and linker port. Assisted with the TRONCHIP assembler design and implementation. Assisted with patent applications. * Cydrome, Inc., Milpitas, CA 95035, Member of the Technical Staff (12/85 - 4/87) Designed and implemented the global and local optimizers and global register allocator and assisted with the overlapped-loop code scheduler for the Cydra 5 mini-supercomputer Fortran compiler. * Vitesse Electronics Corporation, Camarillo, CA 93010, Manager, Compilers and Utilities (5/85 - 12/85) Managed compiler and utility group and participated in architectural design of the Vitesse mini-supercomputer and compiler systems. * Lawrence Livermore National Laboratory, Livermore, CA 94550, Computer Scientist (5/81 - 5/85) Worked on network computer security, cryptography, parallel algorithms and architecture, and simulated annealing. Worked on cryptographic capability protection algorithms and secure key distribution protocols. * UC, Davis/Livermore, Department of Applied Science, Livermore, CA 94550, Lecturer (3/83 - 5/85) Taught ASL 216E, "Computer Security," Spring 1983, a graduate advanced topics course. Also in charge of ASL 290, "Computer Science Seminar Series," Fall 1984 - Spring 1985. * UC, Davis, CA 95616, Department of Electrical and Computer Engineering, Visiting Associate Professor (10/83 - 4/84) Taught Mathematics 129A, "Data Structures And Algorithms," Fall 1983, an upper division undergraduate course, and ECE 278B, "Programming Language Translation," Winter 1984, a graduate course. * SLR Compilers, Inc, Santa Monica, CA 90403, Vice-President (6/79 - 5/81) Project manager for PLM/S86 cross compilation system for IBM 370's. Designed and implemented the syntax and semantic checker and error recovery routines for PLM/S86. * Systems Engineering Laboratories (now Gould Computer Division), Fort Lauderdale, FL 33313, Principal Member of the Technical Staff (3/78 - 5/80) Did database language design and wrote a development proposal. Was COBOL compiler project manager, and Pascal compiler project manager. Made contributions to the ADA HOLWG. * Hughes Aircraft Company, Culver City, CA 92030, Member of the Technical Staff (10/76 - 3/78) Project manager of ATLAS rehosting from HP2100 to Siemens 330. Designed and implemented a SPL2100 cross compiler to effect the rehosting. * UCLA Hospital Clinical Laboratory, Los Angeles, CA 90024 , Senior Programmer (6/74 - 7/76) Implemented parts of a clinical laboratory automation system. * Zeno Systems, Inc, Santa Monica, CA 90405 , Consultant (1972 - 1976) Consulted on a variety of compiler and assembler related problems. * UCLA, Department of Near Eastern Languages, Los Angeles, CA 90024 , Programmer - Research Assistant (10/68 - 11/73) Implemented a morpholexical concordance of Old Babylonian texts. * TRW Systems, Redondo Beach, CA 90278 , Programmer (6/66 - 10/66) Summer employment. Did various aerospace and anti-submarine warfare programs. PUBLICATIONS "A Fast Implementation of Pager's Algorithm," in preparation. "lr, a Full LR(1) Parser Generation System," in preparation. "Some Comments on Morel and Renvoise's 'Global Optimization by the Supression of Partial Redundancies'," ACM SIGPLAN Notices, ACM SIGPLAN Notices, vol. 31, no. 12, December 1996. "Some Comments on 'The Priority-Based Coloring Approach to Register Allocation'," ACM SIGPLAN Notices, vol. 31, no. 7, July 1996. "Some Comments on 'A Solution to a Problem with Morel and Renvoise's 'Global Optimization by Suppression of Partial Redundancies'", ACM Transactions on Programming Languages and Systems, vol. 11, no. 4, October, 1989. "AXON Programming Language Reference Manual," HNC, Inc.,1987. "Simulated Annealing and Parallel Resource Allocation," UCRL 92694 , LLNL, February 4, 1985. "Measurement of Cryptographic Capability Protection Algorithms," with C. J. Buchanan, Computers & Security, vol. 3, no. 2, (also UCRL 89840, LLNL, September 15, 1983). "Performance Evaluation of a Host Peripheral DES Cryptographic Controller Implementing a Capability Protection Scheme," with C. J. Buchanan, UCID 19892, LLNL, September 12, 1983. "Requirements for a Secure Terminal Switch," Computers & Security, vol. 2, no. 3, (also UCRL 88680, LLNL, February 1983). "Lucifer, A Cryptographic Algorithm," Cryptologia, vol. 8, no. 1, January 1984, (also UCRL 88494 rev. 1, LLNL, December 1982). "Connection Management and Key Distribution Protocols," with R. Watson, et. al., UCRL 88345, LLNL, November 1982. "Pascal Programming Language Reference Manual," Systems Engineering Laboratories, 1980. "On the Time Required for Garbage Collection in Retention Block-Structured Languages," with D. Berry, International Journal of Computers and Information Sciences, vol. 7, no. 4, December 1978. "On the Time Required for Reference Count Management in Retention Block-Structured Languages - Part 2," with D. Berry, et. al., International Journal of Computers and Information Sciences, vol. 7, no. 2, June 1978. "On the Time Required for Reference Count Management in Retention Block-Structured Languages - Part 1," with D. Berry, et. al., International Journal of Computers and Information Sciences, vol. 7, no. 1, June 1978. "Properties of Syntax-Directed Translations," Doctoral Dissertation, UCLA Computer Science Department, June 1977. "Titan as a Gravitational Brake," with V. Vinge, Journal of the British Interplanetary Society, February 1974. "A Lambda-Calculus Evaluator W-Grammar," Proceedings of an International Conference - Algol 68 Informal Implementors Interchange, Winnipeg, Canada, June 18-20, 1974. "Two Parallel EULER Run Time Models: The Dangling Reference, Imposter Environment and Label Problems," with L. Chirica, et. al., Proceedings of the ACM Symposium on High-Level Language Computer Architecture, November 7-8, 1973 (also SIGPLAN Notices, November 1973). "On the Time for Retention," with D. Berry, et. al., Proceedings of the ACM Symposium on High-Level Language Computer Architecture, November 7-8, 1973 (also SIGPLAN Notices, November 1973). "Morhpolexical Analysis of Akkadian Texts, Volume I: Old Babylonian Royal Letters," with G.Buccellati, et. al., Internal Report, UCLA Department of Near Eastern Languages, 1972. INVITED TALKS "Requirements for a Secure Terminal Switch," DOE Fifth Computer Security Group Conference, November 16-18, 1982, Knoxville, Tennessee. Summary in Center for Computer Security Newsletter, United States Department of Energy, Office of Safeguards and Security, Vol. 2, No. 3, May 1983. PROGRAMMING LANGUAGES C, C++, Fortran, PL/I, Pascal, Ada, Assembler, SPL, Forth SYSTEMS Unix (BSD & System V), AIX 370, VM 370, MacOS, DOS, Windows, HP3000 ÿ