Difference between revisions of "Winter 2015 SPO600 Platform Specific Code Presentation"
Chris Tyler (talk | contribs) |
Chris Tyler (talk | contribs) |
||
Line 37: | Line 37: | ||
!Category!!Topic!!Question/Topic Description!!Presenter!!Links to resources (Wiki page, handout, web resources)!!Link to your blog post on this topic | !Category!!Topic!!Question/Topic Description!!Presenter!!Links to resources (Wiki page, handout, web resources)!!Link to your blog post on this topic | ||
|- | |- | ||
− | | | + | |Access to features not available in some versions of C / C++||Atomic operations|| || || |
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Memory barriers|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Low-level device access|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Interrupt handling|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Cryptographic instructions|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Single instruction multiple data (SIMD) instructions|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||Run-time CPU feature identification (cpuid)|| || || | ||
+ | |- | ||
+ | |Access to features not available in some versions of C / C++||High-resolution counter access|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Default size of variable types|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Equivalence between variable types (e.g., int and long)|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Layout of arrays in memory|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Alignment requirements|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Endianness (order of data stored in memory)|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Direction of stack growth|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Target triplet|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Jiffies per second|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Page size|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||Pointer size vs. integer size|| || || | ||
+ | |- | ||
+ | |Assumptions about the system which can vary between architectures||FPU rounding|| || || | ||
+ | |- | ||
|} | |} |
Revision as of 08:01, 5 February 2015
Contents
Assignment
- Select one of the topics below by placing your name in the "Student" column (first come, first served - one student per topic).
- During week 5, research the topic and prepare a 3- to 5-minute presentation to teach the answer to the class.
- Be prepared to teach this presentation during week 6. You may want to draw whiteboard diagrams, use presentation slides, or have a 1-page handout. Please avoid taking more than 5 minutes in total for your presentation.
Deadlines
- Topic selection: 9:50 am, Tuesday, February 10 (End of the scheduled Tuesday class in Week 5)
- Presentation ready: 8:00 am, Tuesday, February 17 (You must be prepared to present before the scheduled Tuesday class in Week 6)
FAQ
- Q: How much detail should the presentation include?
- A: Each of these topics is pretty small and straightforward. Provide enough detail that your colleagues in this course will know what they need to know going forward -- the focus is practical knowledge necessary to understand, modify, and write code. Where appropriate, provide some type of resource for future reference -- a link to an existing web resource, a 1-page handout, or a blog post or wiki page about the topic.
- Q: How will this be marked?
- A: In week 6, I will ask you to write a short blog post summarizing your presentation.
- Q: What about the topics not selected by a student?
- A: Feel free to grab a second topic if you're interested. I'll teach the unclaimed topics.
- Q: Can we work with others preparing our topic?
- A: Yes. In many cases, one topic is complimentary to another topic, and it would be great if you coordinated on your presentations.
- Q: What resources should I use?
- A: There are resources on this wiki and on the web (for example, see the Assembly Language category on this wiki).
- Q: Are there any classes scheduled during Week 5?
- A: No. Your professor will be at Linaro Connect. However, the classroom is reserved for our use, and you're welcome to use it to discuss your presentation ideas with classmates.
Topics
Category | Topic | Question/Topic Description | Presenter | Links to resources (Wiki page, handout, web resources) | Link to your blog post on this topic |
---|---|---|---|---|---|
Access to features not available in some versions of C / C++ | Atomic operations | ||||
Access to features not available in some versions of C / C++ | Memory barriers | ||||
Access to features not available in some versions of C / C++ | Low-level device access | ||||
Access to features not available in some versions of C / C++ | Interrupt handling | ||||
Access to features not available in some versions of C / C++ | Cryptographic instructions | ||||
Access to features not available in some versions of C / C++ | Single instruction multiple data (SIMD) instructions | ||||
Access to features not available in some versions of C / C++ | Run-time CPU feature identification (cpuid) | ||||
Access to features not available in some versions of C / C++ | High-resolution counter access | ||||
Assumptions about the system which can vary between architectures | Default size of variable types | ||||
Assumptions about the system which can vary between architectures | Equivalence between variable types (e.g., int and long) | ||||
Assumptions about the system which can vary between architectures | Layout of arrays in memory | ||||
Assumptions about the system which can vary between architectures | Alignment requirements | ||||
Assumptions about the system which can vary between architectures | Endianness (order of data stored in memory) | ||||
Assumptions about the system which can vary between architectures | Direction of stack growth | ||||
Assumptions about the system which can vary between architectures | Target triplet | ||||
Assumptions about the system which can vary between architectures | Jiffies per second | ||||
Assumptions about the system which can vary between architectures | Page size | ||||
Assumptions about the system which can vary between architectures | Pointer size vs. integer size | ||||
Assumptions about the system which can vary between architectures | FPU rounding |