10
CS61C SECTION Nathan Pemberton [email protected] http://people.eecs.berkeley.edu/~nathanp/

CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

CS61C SECTIONNathan [email protected]://people.eecs.berkeley.edu/~nathanp/

Page 2: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

ABOUT ME

Grew up in SLO County

Undergrad at Santa Cruz

Work at Oracle

Grad School at Berkeley

Page 3: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

MY RESEARCHWarehouse-scale computers

CPU

Disk NIC

Use

r I/O

The “Box”

Mem

Page 4: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

MY RESEARCHWarehouse-scale computers

The “Box”

NIC

CPU

“Magic”

Mem

CPUSMem

CPUS

Mem

CPUS

Disk

CPU

ME

CPU

Page 5: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

MY RESEARCHWarehouse-scale computers

The “Box”

NIC

CPU

“Magic”

Mem

CPUSMem

CPUS

Mem

CPUS

Disk

CPU

ME

CPU

Box

Box

Box

Box

Box

Box

Box

Box

Box

Box

Box

Box

Switch/Router

Page 6: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

MY RESEARCHWarehouse-scale computers

SoC

SoC SoC

SoC

Mem

Mem Mem

Mem

Switch

Flash

Flash

Disk

NW

NW

NW

Cell

Cell Cell

Cell

TXN

Key-ValueStore

RAW

NWService

ObjectStore

DataBase

Page 7: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

HINTS/ADVICE

FOR THIS CLASS

Page 8: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

EDITOR/ENVIRONMENT

I use: ssh + tmux + vim + cscope

Why?:

Can’t always edit code locally

Setup is portable (I can get it working almost anywhere)

IDEs (e.g. eclipse)

Great for complex environments

Lots of handy tools (like refactoring)

Really only work on a local machine

Page 9: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

STYLE

Use One!

I don’t care which so long as it’s consistent

Examples

https://www.freebsd.org/cgi/man.cgi?query=style&sektion=9

http://www.linuxfromscratch.org/alfs/view/hacker/part2/hacker/coding-style.html

Google: “C Style Guide”

Page 10: CS61C SECTIONnathanp/cs61c/sec1.pdf · I use: ssh + tmux + vim + cscope Why?: Can’t always edit code locally Setup is portable (I can get it working almost anywhere) IDEs (e.g

HANDY LINKShttp://people.eecs.berkeley.edu/~nathanp/cs162/cs162.html

Cscope/Ctags

http://cscope.sourceforge.net/cscope_vim_tutorial.html

Make

http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/

GDB

http://www.yolinux.com/TUTORIALS/GDB-Commands.html